




已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
i 目目 录录 1 实习目的1 2 设计思想1 3 功能描述1 4 详细设计2 5 调试与测试结果分析3 6 使用说明3 6.1 主界面3 6.2 输入记录4 6.3 显示记录4 6.4 按姓名查找5 6.5 删除记录6 7 总结6 参考文献8 附录(源代码).9 德州学院 信息管理学院 2013 级 信管(财会)专业 自主学习能力 1 学学生生通通讯讯录录管管理理系系统统 1 实习目的 (1) 通过课程设计全面掌握c 语言程序设计关键知识点,掌握 c 语言中 数组、指针、结构体、文件等方面的基本知识。 (2) 通过课程设计了解并掌握 c 语言程序设计的方法,熟悉 c 程序设计的开 发环境及 c 程序的调试过程。 (3) 培养查阅参考资料、手册的自学能力,通过独立思考深入钻研有关问题, 学会自己分析、解决问题的方法。 2 设计思想 运用所学知识编写一个简单的通讯录管理系统的程序,使它具有以下的功能: 输入学生的学号,姓名显示学生记录,增加学生记录,按照学生姓名进行查找学 生记录,删除学生记录。 3 功能描述 (1)编译时,主菜单为如下: (2)如图 1 所示,本通讯录有 5 大功能模块组成: 输入记录:将所要记录的人的信息输入。 显示记录:将所输入的记录一一显示。 按姓名查找:从所记录中输入姓名查找其信息。 删除记录:从记录中删除某学生的信息。 退出程序。 0、 输入记录 1、 显示记录 2、 按姓名查找 3、 删除记录 4、退出 t 德州学院 信息管理学院 2013 级 信管(财会)专业 自主学习能力 2 图 1 通讯录功能模块图 4 详细设计 (1)文件名的使用:include 称为文件包含命令,被包含的文件通常是由系统 提供的,其扩展名为.h .stdio 为 standard input output 的缩写,意为“标准输入输出” . 代码中只要有用到 printf scanf 等函数,头文件就要写 #include 这个 在代码中必不可少的,因为编写代码就是为了输出结果 ;用到像 getch()这种键 盘输入函数的话,就需要用到#include ;用到系统标准输出函数的话, 就用到#include ;用到字符数组就要用#inciude。 (2)结构体:如 struct record 定义结构体为 record 。当结构体成员为指针的 时候,每当给这个成员赋值之前必须先为这个结构体成员分配一个内存空间。 (3)字符数组的比较:如 strcmp(,name)=0 ,strcmp(studenti. phone,phone)=0,strcmp(studenti.phone,phone)=null 都是用来比较输入的与 原有的,当相等时即为 0. (4)c 语言中的一些结构。如 for (j=i;j8); return a; 5 调试与测试结果分析 编好后进行运行时,有一些遗漏问题,如大括号的使用是否对起;语句的使 用是否错误;对一个变量是否定义;输出是否有遗漏;数据的使用是否符合规定,定 义是否正确等。对于调试,要看程序是否运行且达到预期效果,按照思路能够正 确的使用。开始时在姓名输入上出了问题,但是是小问题,修改一下便可实现姓 名、电话号码的正常输出。 6 使用说明 6.1 主界面 当用户刚运行程序时,按任意键进入主菜单,如图 2 所示。此时,用户可 以选择 04 之间的数字进行相应操作。当输入 0 时,退出此系统。 德州学院 信息管理学院 2013 级 信管(财会)专业 自主学习能力 4 图 2 程序主界面图 6.2 输入记录 当用户输入 0 并按 enter 键后,即可进入输入界面。其输入记录过程如图 3 所示。图中输入了一位联系人信息。 图 3 输入记录 德州学院 信息管理学院 2013 级 信管(财会)专业 自主学习能力 5 6.3 显示记录 当用户执行了输入记录之后,即可输入 1 并按 enter 来进行显示联系人记录 操作。如图 4 所示,此时有 1 位联系人信息。 图 4 显示记录 6.4 按姓名查找 当用户输入 2 并按 enter 键后,可以进入如图 5 所示的联系人查找界面, 可按姓名进行记录查找。 德州学院 信息管理学院 2013 级 信管(财会)专业 自主学习能力 6 图 5 按姓名查找记录 6.5 删除记录 当用户输入 3 并按 enter 键后,可以进入如图 6 所示的删除界面,按姓名进 行删除联系人的操作。图中为删除了一位名为 xushuo 的联系人。 图 6 删除记录 7 总结 这次的课程设计实验是对我们进入大学以来学习 c 语言结果的一次大考验。 德州学院 信息管理学院 2013 级 信管(财会)专业 自主学习能力 7 自己动手,发现问题和解决问题。并发现了许多自己的不足,平时没掌握的知识 在实践中暴漏,经过不断的思考,查阅书籍和上网查资料及上机运行,解决了大 部分问题,还稍微有些小问题。但是,我相信在今的学习中,一定能把它解决好。 当今计算机应用在生活中可以说得是无处不在。因此作为二十一世纪的大学来说 掌握程序开发技术是十分重要的,而 c 语言又是最常见,功能最强大的一种高级 语言,因此做好 c 语言课程设计是十分必要的。 我不仅巩固c 语言程序设计课程学习的内容,掌握设计的基本方法,强 化上机动手能力,还进一步掌握以下了知识:数据类型、分支控制、循环控制、 函数的定义及调用、结构体及数组、指针、文件操作、编译预处理等;通过课程 设计,掌握了程序的局部测试、调试方法,建立程序系统调试、测试的基本概念 和思想,学会较大程序的系统测试和调试方法。 当我选择学生通讯录管理系统时,首先系统分析主要思路及框架,与同学讨 论,联系所学知识,尽管一些文件要同组帮助找,也还有一些循环语句要具体分 析,了解其运行路线,尤其是 for,while,if 等的使用。我知道书上和老师讲的有限, 故上网搜也是一种利用资源的表现。在编程中,特别是结构体,指针的部分,几 乎是一片空白。不过经过几天的努力,大体上把课本上的知识点看了一遍,知识 点也都基本是撑握了,所以下一步就是开始正式的编程序了。当读懂了 c 语言编 程的基本过程和方法。 经过一波三折,终于开始正式编程。 团队精神不可少,分工合作也是必须的,身为组长就要以身作则,带领好小 组,做好各项工作。在开始,对本组人员进行整理,分析其特点,再分配任务, 然后进行综合应用,最后对所需资料及要编的程序进行整理得出最后程序。 通过这次课程设计使我们懂得了理论与实际相结合是很重要的,只有理论知 识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论, 才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。 德州学院 信息管理学院 2013 级 信管(财会)专业 自主学习能力 8 参考文献 1谢延红,王付山.c 语言程序设计教程m.北京:国防工业出版社,2010.152-171. 2刘瑞挺.计算机二级教程m .南开大学出版社,1996.11-63. 3姜仲秋等主编.c 语言程序设计m.南京大学出版社,1998.26-58. 4谭浩强编.c 程序设计(第二版)m.清华大学出版社,1999.112-265. 5美paul s. r. chishohm 等著.c 语言编程常见问题解答m.清华大学出版社,1996.213-231. 6陈朔鹰 ,陈英主编.c 语言趣味程序百例精解m.北京理工大学出版社,1996.40-86. 7田淑清.c 语言程序设计辅导与习题集m.中国铁道出版社,2000.53-102. 8谭浩强编.c 语言程序设计题解与上机指导m.清华大学出版社,2000.58-213. 9by brian w. kernighan and dennis m. ritchie. the c programming language,pubilished by prentice-hall in 1988. 德州学院 信息管理学院 2013 级 信管(财会)专业 自主学习能力 9 附录(源代码) #include #include #include #include #define null 0 struct record char name20; char phone20; student500; int num=0; int menu_select(); int adduser(); int list(); int search(); int deletebyname(); int exit(); void main() for(;) switch(menu_select() case 0:adduser();break; case 1:list();break; case 2:search();break; case 3:deletebyname();break; case 4:exit(0); menu_select() int a; printf(“请输入任意键继续:n“); getch(); printf(“*菜单 *n“); printf(“0. 输入记录n“); printf(“1. 显示记录 n“); printf(“2. 按姓名查找n“); printf(“3. 删除记录n“); printf(“4. 退出n“); do printf(“n 请输入你的选择(04):“); scanf(“%d“, 德州学院 信息管理学院 2013 级 信管(财会)专业 自主学习能力 10 while (a4); return a; adduser() printf(“n* 请输入用户信息 *n“); printf(“n 输入姓名:“); scanf(“%s“, printf(“n 输入电话号码:“); scanf(“%s“, num+; printf(“n 是否继续添加?(y/n):“); if (getch()=y) adduser(); return(0); list() int i; if(num!=0) printf(“n* 以下为通讯录所有信息*“); for (i=0;inum;i+) printf(“n 姓名: %s“,); printf(“n 电话: %s“,studenti.phone); return(0); search() int i; int a=0; printf(“n* 按姓名查找 *“); char name20; printf(“n 请输入姓名:“); scanf(“%s“,name); for(i=a;inum;i+) if (strcmp(,name)=0) printf(“n* 以下是查找的用户信息 *“); printf(“n 姓名: %s“,); printf(“n 电话: %s“,studenti.phone); printf(“n 是否继续查找?(y/n):“); if (getch()=y) search(); return(0); 德州学院 信息管理学院 2013 级 信管(财会)专业 自主学习能力 11 deletebyname() int a=0; int j; int i; char name20; printf(“n 请输入要删除用户姓名:“); scanf(“%s“,name); for (i=a;inum;i+) if (strcmp(,name)=null) printf(“n 以下是要
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 部编版小升初语文模拟试卷分类汇编诗歌鉴赏(附答案)
- 徐州市人教版八年级生物上册期末期末试卷及答案
- 数学人教六年级下册期末真题模拟试题经典套题
- 人工智能训练师3级理论知识复习题练习试题及答案
- 2025年新安全员专业知识考试题及答案
- 2025年度CPA注册会计师考试税法预测题含答案
- 深圳传动方案咨询中心
- 扬州品质截流井施工方案
- 校园文艺活动策划方案模板
- 服装咨询渠道方案怎么写
- 护工跌倒培训
- 2025年中国坚果礼盒行业市场全景分析及前景机遇研判报告
- 白酒企业召回管理制度
- QGF009-2021 三偏心硬密封蝶阀
- 呼吸系统用药指南
- 2025春季学期国开电大法学本科《合同法》一平台在线形考(任务1至4)试题及答案
- iqc进料检验员试题及答案
- 2025年山东出版集团有限公司山东出版传媒股份有限公司招聘(192名)笔试参考题库附带答案详解
- 高校艺术团管理工作职责
- 民兵学习护路知识课件
- 抵押房屋处置三方协议
评论
0/150
提交评论