物联网工程教研室-课程设计说明书-终

上传人:第*** 文档编号:35026585 上传时间:2018-03-07 格式:DOC 页数:16 大小:12.95MB
返回 下载 相关 举报
物联网工程教研室-课程设计说明书-终_第1页
第1页 / 共16页
物联网工程教研室-课程设计说明书-终_第2页
第2页 / 共16页
物联网工程教研室-课程设计说明书-终_第3页
第3页 / 共16页
物联网工程教研室-课程设计说明书-终_第4页
第4页 / 共16页
物联网工程教研室-课程设计说明书-终_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《物联网工程教研室-课程设计说明书-终》由会员分享,可在线阅读,更多相关《物联网工程教研室-课程设计说明书-终(16页珍藏版)》请在金锄头文库上搜索。

1、物联网工程教研室 课程设计说明书 (2015-2016学年 第 2学期) 课程名称 程序设计基础(二)课程设计 设计题目 联系方式管理系统 学号 201540438203 姓名 陈厚儒 小组成员 陆子寒,陈厚儒,梁光明 起止时间: 2016年 6 月 20 日 至 2016 年 7 月 1 日 课程设计 评 语 在为期两周的课程设计中,该生按时到课,课堂表现一般,参与了课程设计 的整个过程,实现了联系方式管理系统的以下功能:对联系人的增加,删除,搜 索,修改,统计等功能。其课程设计说明书填写方式正确,图表与解释相符,标 注较为明了;能对整个设计过程进行自我总结。对于课程设计过程介绍比较正确,

2、代码正确。可以看出对课本知识掌握较熟练。作品演示熟练,能按照设计要求完 成指定的功能。答辩过程中回答问题较流利,循环掌握良好,但链表等掌握一般。 不足之处是在程序中只运用了链表,结构较简单,没有涉及到继承多态和除基础 功能之外的功能。答辩过程中有些地方函数解释不清。 平时成绩 报告成绩 演示与答辩 成绩 成绩总评 指导教师 (签字) 年 月 日 注:成绩均用百分制。总成绩=平时成绩*20%+报告成绩*40%+演示与答辩成绩*40%第 1 页 设计题目:联系方式管理系统 1、课程设计目的 本课程设计是实践性教学环节之一,课程设计的目的是使学生通过参加小型软件的开 发过程,进一步掌握面向对象的程序

3、设计方法,得到切实的面向对象程序设计训练。掌握 书写程序设计说明文档的能力,提高运用C+解决实际问题的能力。 2.1课程设计正文 2.1.1 系统分析 该设计是对电话本中的联系人进行增加,删除,搜索,修改,统计等操作。可以正常 实现客观应有功能。每个联系方式记录包括八项,分别为:编号,姓名,性别,年龄,关 系,序号,类型与内容。假设联系人列表(3条记录)如表2.1所示 编号 姓名 性别 年龄 关系 序号 类型 内容 1001 1002 1003 张三 李四 王五 男 女 男 20 21 20 家人 同事 朋友 1 2 3 电话 QQ 地址 123456 166665 河北衡水 表2.1 联系人

4、列表 该系统主要功能包括:联系人信息进行正常操作。 分析: (1)增加功能:利用链表和带参的构造函数进行联系人赋值。 (2)搜索功能:利用循环对关键字进行查找某个信息。 (3)显示功能:利用链表循环,在屏幕显示当前所有联系人信息。 2.1.2系统结构图 系统要实现的功能: (1)增加记录 (2)查询记录 (3)显示记录 (4)编辑记录 (5)删除记录 (6)存档读档 (7)统计人员 (8)退出程序第 2 页 系统结构图如图2.1所示。 开始 读档 增加联系人 增加 查询 显示 编辑 删除 存档 统计 退出 否 是 图2.1 系统结构示意图 2.2详细设计 2.2.1 成员定义 (1)联系人信息

5、定义: int num;/编号 string sex;/性别 string name;/姓名 int age;/年龄 string relation;/关系(家人朋友同事等) /以上为人员信息 int order;/序号 string type;/类型(电话QQ地址) string content;/联系方式 /以上为联系信息 (2)成员函数定义: void Admin:add();/增加 void Admin:search();/搜索第 3 页 void Admin:searchbyname();/按姓名查找 void Admin:searchbynum();/按编号查找 void Admi

6、n:display();/显示 void Admin:change();/修改 void Admin:count();/统计 void Admin:countbysex();/按性别统计 void Admin:countbyage();/按年龄统计 void Admin:delete1();/删除 void Admin:save();/存档 void Admin:load();/读档 Information:Information(string,string,int,string,string,string); /上面是不包括编号序号的带参构造 Information:nformation(i

7、nt,string,string,int,string,int,string,string); /上面是包括编号序号的带参构造函数 void Information:display();/显示函数 void Information:change(string,string,int,string,string,string); /上面是更改人员信息 void Information:savetofile(ofstream/将记录写入文件 bool Information:IsEqual(string n); /判断名字是否等于n bool Information:IsEqual(int n);

8、/判断编号是否等于n bool Information:IsEqual1(string s);/ 判断性别是否等于s bool Information:IsEqual1(int a);/ 判断年龄是否等于a 2.2.2存储结构: 为了显示的信息清晰明了,联系人所有信息设置成以下格式,如图2.2 图2.2联系人信息格式 2.2.3 函数声明 (1)添加函数 函数名:void Admin:add() 第 4 页 操作结果:创建新联系人。 分析:利用带参构造函数对新对象赋值。 (2)查询函数 函数名:void Admin:search() void Admin:searchbyname() void

9、 Admin:searchbynum() 操作结果:按关键字查找并显示记录 分析:利用指针链表,IsEqual函数,进行逐个查找,完成后利用display函数进行 显示。 (3)显示函数 函数名:void Admin:display() 操作结果:显示记录 分析:通过引用头文件iomanip进行格式化输入输出,控制左对齐等,使输出后的信 息更美观。 (4)编辑函数 函数名:void Admin:change() 操作结果:改变原有联系人记录 分析:使用带参构造函数,接受键盘输入的字符后进行修改。 (5)删除函数 函数名:void Admin:delete1() 操作结果:删除某个或多个联系人记

10、录 分析:用while循环,用IsEqual查找,链表火车,找出符合条件的联系人记录,从 而实现删除功能。 (6)存档函数 函数名:void Admin:save() void Information:savetofile(ofstream 否 是 图2.3增加记录第 6 页 (2)删除函数(如图2.4):开始 p!=NULL 删除对象p 是 是 否 否 接收要删除的编号 查无此人 否 p-IsEqual(num) 是 显示此条记录 从键盘接受的字符为Y或y p=head head=p-next 是 是 q-next=p-next 结束 取消删除 否 q=p p=p-next 图2.4删除指定

11、记录 (3)修改函数(如图2.5): 开始 p!=NULL 否 否 结束 接受要修改 的编号 输出编号为num信息 调用带参的构造函数进 行信息修改 查无此人 p-IsEqual(num) 是 是 p=p-next 图2.5修改指定记录第 7 页 (4)按姓名搜索函数(如图2.6): 开始 从键盘接收要搜索的姓名 p!=NULL 是 p-IsEqual(name) 否 是 输出对应信息 count+ p=p-next count=0 否 是 查找完毕, 没有找到匹 配结果 否 查找完毕, 找到了count 个记录 结束 图2.6在记录中按姓名搜索 (5)比较函数(如图2.7) 开始已接收的参数

12、与原有 数据比较 否 接收参数 是 返回值为true 返回值为false 结束 图2.7比较函数第 8 页 (6)存档函数(如图2.8): 开始 ofstream fout(“Information.txt“,ios:out) !fout 是 否 关闭文件 结束 无法打开文 件,存档失 败 将记录写入 到文件中 从编号开始输出 数据信息 是 q=q-next; q!=NULL 否 图2.8将记录存进文档 2.3程序测试结果 (1)主菜单界面如图2.9所示。 图2.9是否读档第 9 页 (2)新程序无存档,进入操作页面如图2.10所示。 图2.10主界面操作 (3)已添加两个联系人如图2.11(

13、1) (2)所示。 图2.11(1)添加第一个联系人图2.11(2)添加第二个联系人第 10 页 (3)查询记录,按照编号和姓名查询如图2.12 图2.12按条件查询某个联系人 (4)显示当前所有记录如图2.13。 图2.13显示记录第 11 页 (5)修改某一项联系人如图2.14(1) (2) 。 图2.14(1)修改联系人 图2.14(2)修改联系人第 12 页 (6)统计所有联系人如图2.15 图2.15统计当前联系人 (7)删除某个联系人如图2.16 图2.16删除某一项联系人第 13 页 (8)存档如图2.17 图2.17将当前记录存档 (9)退出程序如图2.18 图2.18退出程序

14、第 14 页 (10)再读档如图2.19 图2.19重新读档 3、课程设计总结 截止学期末,大一已经结束。我们已经学习了两个学期的 C+,编程的基础也已经打 下。在平日里的理论课学习过程中也学习了各种各样的理论和知识,在实践课上也会出现 好多好多的错误。多亏了我们的老师能够耐心的教导我们,不厌其烦的解释那些低级的错 误。这次期末的课程设计也是如此,开始的时候错误多多。不过已经通过各种途径解决了。 在解决这些问题的过程中让我也学到了许多课本上没有传授过的知识以及团队合作的重要。 我们小组此次课程设计的题目是联系方式管理系统。程序的编写对现在的我们来说不 是一件难以完成的事情,通过参考课本和资料,

15、再加上遇到难以解决的问题时询问小组同 学和老师,也都成功的完成了编译并运行。 与每次的课程作业有所不同,课程设计耗时长,难度较大,不容易一次解决所有问题。 但相应的与同学老师之间的交流更多了,解决途径也多了,可自由发挥的地方也很多。通 过这次的课程设计我不但回顾了以前学到的知识,还学习到许多的新的知识,同时认识到 了自己的许多缺点;比如在设计程序时不爱交流,发现程序调试问题后久久不能解决就会 变得烦躁,不愿去请教他人;还有以前的基础不够牢固,编写的时候要频繁的翻阅资料。 4、参考文献 1谭浩强.C+程序设计(第2版) .清华大学出版社.2011.8 2 刘振安,刘燕君,孙忱.C+程序设计课程设计.机械工业出版社.2007.1 3 朱金付:柏毅.C+课程设计. 清华大学出版社.2011.7

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 教学课件 > 初中课件

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