C语言课程设计报告学生通讯录管理系统设计.pdf

上传人:zh****71 文档编号:126888314 上传时间:2020-03-28 格式:PDF 页数:19 大小:921.21KB
返回 下载 相关 举报
C语言课程设计报告学生通讯录管理系统设计.pdf_第1页
第1页 / 共19页
C语言课程设计报告学生通讯录管理系统设计.pdf_第2页
第2页 / 共19页
亲,该文档总共19页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《C语言课程设计报告学生通讯录管理系统设计.pdf》由会员分享,可在线阅读,更多相关《C语言课程设计报告学生通讯录管理系统设计.pdf(19页珍藏版)》请在金锄头文库上搜索。

1、课程设计报告 本科 课程 高级语言程序设计 学号 1310411031 姓名 秦钱军 班级 2013级计算机科学与技术 教师 冯凤 时间 2014 年 1 月 计算机科学与技术系 0 设计名称 学生通讯录管理系统设计 设计内容 目的与要求 设计内容 设计一个学生通讯录 学生通讯录数据信息构成内容可自行设计 如 姓名 家庭地址 邮政编码 电话号码等等 通讯录数据类型定义为结 构类型 目的与要求 设计学生通讯录 1 主要功能 1 能建立 修改和增减学生通讯录 2 能够多种方式进行查询 2 要求 界面友好 易于操作 采用文件存储数据 计划与进度安排 12 月 20日至 12 月 22 日 研究题目的

2、要求及所给条件 综合分析实验应该达 到的目标 探讨实验需要使用的方法和解决此问题的实际情况 图书馆查阅相 关资料 综合比较 12 月 23日至 12 月 25 日 设计解题的方法和具体步骤 并进行分步思考 利 用主菜单函数 menu 将程序模块化 在进行各个模块的设计和制作方案 绘制 实验的流程图 再将各个模块综合 将各个函数运用于主函数中 绘制主函数 的流程图 综合运用所有的函数 12 月 26日至 12 月 31 日 查阅书籍 仔细研究书本上的例题 再结合网络资 料 结合各方面所得的资料 编写程序 仔细修改程序 1 月 1 日至 1 月 2日 调试程序 运行程序 再次将程序修改 1 月 3

3、 日至 1 月 5日 完善程序 仔细填写课程设计报告 再次认真阅读程序 并熟悉程序 为验收做最后的准备 设计过程 步骤 可加页 整个程序主要使用了结构体类型 结构体类型充当了整个程序的骨架 将 各个程序段有机巧妙的结合在一起 例如 struct student 声明一个结构体类型struct student long num 学号 char name 20 姓名 int banji 班级 char tel 11 号码 char Email 20 邮箱 int sushe 宿舍 struct student next next 是指针变量 指向结构体变量 整个系统必须有一个主函数 为了尽量提高程

4、序的易修改性 且不至于相 互干扰 将每一个功能分成不同的模块 用不同的函数来实现 例如在我写的 1 这个程序中 一共用了9 个函数 分别是 主菜单函数 void menu void 输入函数 struct student shuru void 输出单个学生信息函数 void shuchu struct student s 输出所有学生信息函数 void findall 按姓名查找函数 void findname 按学号查找函数 void findnum 删除函数 struct student stushanchu struct student stu 排序函数 void paixu 主函数 v

5、oid main 这样在整个程序的设计过程中也就一目了然 写起来也相对轻松了不少 下面是摘自源程序的主函数 void main 主函数 char a menu puts n 您为首次使用本系统 建议您按1开始录入学生信息 a getche while a puts switch a case 0 goto end break case 1 puts n 好了 您可以开始向本系统录入学生通讯录信息了 stu shuru system cls menu puts n 学生信息录入完毕 请输入你的选择 0 6 n break case 2 findall puts n 请输入你的选择 0 6 bre

6、ak case 3 findname puts n 请输入你的选择 0 6 break case 4 findnum puts n 请输入你的选择 0 6 break case 5 stu shanchu stu puts n 请输入你的选择 0 6 break case 6 paixu puts n 请输入你的选择 0 6 break default puts 输错了 按数字 1 键录入学生信息吧 break a getche end puts 谢谢您使用本系统 欢迎再次使用 2 结果与分析 可以加页 主界面 按 1 录入学生通讯录信息 3 按 2 查看所有学生信息 4 按 3 按姓名查找学

7、生信息 按 4 按学号查找学生信息 5 按 5 删除学生信息 删除后 6 按 6 将通讯录信息排序 按 0 退出 7 程序已实现对学生信息的录入 按姓名查询 按学号查询和删减 唯一的 不足之处是没能实现对学生信息的修改 设计体会与建议 课程设计 是培养学生综合运用所学知识 发现 提出 分析和解决实际问题 锻炼实践能力的重要环节 是对学生实际工作能力的具体训练和考察过程 随着 科学技术发展的日新月异 当今计算机应用在是生活中可以说得是无处不在 因此作为二十一世纪的大学来说掌握计算机开发技术十分重要的 具体的各个函数是参照课本上 链表 那一章的内容的 比如结构体的建立 8 查找和排序等功能 这些书

8、上都有类似的 例如在第六章中有一个用冒泡法排 序的例题 我就是仿照这个模式来对结构体进行排序的 回顾起此次课程设计 至今我仍感慨颇多 的确 从从拿到题目到完成整 个编程 从理论到实践 在整整半个学期的日子里 可以学到很多很多的的东 西 同时不仅可以巩固了以前所学过的知识 而且学到了很多在书本上所没有 学到过的知识 通过这次课程设计使我懂得了理论与实际相结合是很重要的 只有理论知识是远远不够的 只有把所学的理论知识与实践相结合起来 从理 论中得出结论 才能真正为社会服务 从而提高自己的实际动手能力和独立思 考的能力 在设计的过程中遇到问题 可以说得是困难重重 这毕竟第一次做 的 难免会遇到过各种

9、各样的问题 同时在设计的过程中发现了自己的不足之 处 对以前所学过的知识理解得不够深刻 掌握得不够牢固 比如说结构 体 通过这次课程设计之后 一定把以前所学过的知识重新温顾 在课程设计过程中 我学到了很多人生的哲理 懂得怎么样去制定计划 怎么样去实现这个计划 并掌握了在执行过程中怎么样去克服心理上的不良情 绪 黑夜过去了 我们收获的是黎明 在本次实践中 给我印象最为深刻的是 在文件删除程序的编译过程中 先有我的各个子程序都已经编辑成功 那么这 最后的程序就将是我成功的关键 在这个问题的解决上 我打了退堂鼓 我不 能忍受长时间的无功而反 时间正在消磨我的意志 没有了柳暗花明的一天 那么我怎么能说

10、经受住了考验 谢谢老师的那句话 她说 人力有所不能及 然而 人的精神是不会败倒的 我鼓起勇气 到处问 到处查资料 黄天不负 有心人 在一篇文章上 终于看到了我所特别要求的函数 我实现了组合是关 键的理论 不得不说这是精神的胜利 是永不言败的精神让我的程序重见天日 我们的课程设计结束了 但是它留给我的印象是不可磨灭的 无论我以后 会不会涉及到 C语言程序编译的研究 我想 我至少掌握了一种系统的研究方 法 我们学习的目的就在于运用 我们运用这种研究方法的时候会很多 我最 后要感谢课程设计 它的确教会我很多 9 附录 include include include include include d

11、efine NULL 0 struct student long num char name 20 int banji char tel 11 char Email 20 int sushe struct student next struct student stu int n void menu void 主菜单函数 system cls puts puts 学生通讯录管理系统 puts puts puts 1 录入学生通讯录信息 puts 2 列出所有学生通讯录 puts 3 按姓名查询信息 puts 4 按学号查询信息 puts 5 删除学生信息 puts 6 按学号将通讯录排序 10

12、 puts 0 退出 puts puts puts puts struct student shuru void 输入函数 system cls struct student s1 s2 n 1 int num puts 请输入学生个数 提示 个数不能输入0 scanf d s1 s2 struct student malloc sizeof struct student puts puts 请输入学号 scanf ld puts 请输入学生姓名 scanf s s1 name puts 请输入班级 scanf d puts 请输入电话号码 scanf s s1 tel puts 请输入电子邮

13、件 scanf s s1 Email puts 请输入学生宿舍号 scanf d stu s1 while nnext s1 s2 s1 s1 struct student malloc sizeof struct student puts puts 请输入学号 scanf ld puts 请输入学生姓名 11 scanf s s1 name puts 请输入班级 scanf d puts 请输入电话号码 scanf s s1 tel puts 请输入电子邮件 scanf s s1 Email puts 请输入学生宿舍号 scanf d n n 1 puts s2 next s1 s2 s1

14、s2 next NULL return stu system cls void shuchu struct student s 输出单个学生信息 printf 8ld s num printf 15s s name printf 8d s banji printf 15s s tel printf 15s s Email printf 5d n s sushe void findall 输出所有学生信息 system cls struct student s if n 2 printf n 现在有 d 个学生信息 分别是 n n else printf n 现在有 d 个学生信息 分别是 n

15、n puts puts 学号姓名班级电话电子邮件宿舍 s stu while s NULL shuchu s s s next 12 puts puts 返回主菜单请按 9 if getche 9 menu void findname 按姓名查找函数 system cls struct student s char name 20 printf n 请输入你要查询的学生姓名 n scanf s name s stu while strcmp s name name 0 s s next if s NULL puts 查无此学生姓名 goto end else puts 该学生的信息为 puts

16、 学号姓名班级电话电子邮件宿舍 shuchu s end puts 返回主菜单请按 9 if getche 9 menu void findnum 按学号查找函数 system cls struct student s puts 请输入你要查询的学生学号 long i scanf ld s stu while s num i 13 s s next if s NULL puts 查无此学生学号 goto end else puts 该学生的信息为 puts 学号姓名班级电话电子邮件宿舍 shuchu s end puts 返回主菜单请按 9 if getche 9 menu struct student shanchu struct student stu 删除函数 system cls long num char s struct student s1 s2 if stu NULL puts 没有任何学生信息 goto end puts 请输入你要删除的学生学号 scanf ld s1 stu puts 警告 你确定要删除这个学生的信息吗 Y N scanf s if s Y s y

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 其它文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号