1、 课 程 名 称 计算机高级语言课程设计(C) 教 师 姓 名 本科生姓名 本科生学号 本科生专业 机械设计制造及其自动化 所 在 院 系 机 电 学 院 类别: 日期: 2013.7.11 课程设计课程设计评语评语 对课程论文的评语: 平时成绩: 课程论文成绩: 总 成 绩: 评阅人签名: 注:1、无评阅人签名成绩无效; 2、必须用钢笔或圆珠笔批阅,用铅笔阅卷无效; 3、如有平时成绩,必须在上面评分表中标出,并计算入总成绩。 目目 录录 1题目要求 . 1 2需求分析 . 1 3总体设计 . 1 4详细设计 . 2 5上机操作 23 6总结28 7致谢28 参考文献29 第 1 页 1题目要
2、求题目要求 模拟手机通信录管理系统,实现对手机中的通信录进行管理。功能要求如下: (1)查看功能:选择此功能时,列出下列 3 类选择。 办公类. 个人类. 商务类. 当选中某类时,显示出此类所有数据中的姓名、电话号码和电子邮件。 (2)增加功能:能录入新数据。 一个结点包括:姓名、电话号码、分类(办公类、个人类、商务类) 、电子邮件。 例如: 杨春 135896664454 商务类 当录入了重复的姓名和电话号码时,则提示数据录入重复并取消录入;当通信录中超过 15 条信息时,储存空间已满,不能再录入新数据;录入的新数据能按递增的顺序自动进行条 目编号。 (3)修改功能:选中某个人姓名时,可对
3、此人的相应数据进行修改。 (4)删除功能:选中某个人的姓名时,可对此人的相应数据进行删除,并自动调整后续条目 的编号。 2需求分析需求分析 根据题目要求,由于联系人信息时存放在文件中,所以应提供文件的输入、输出等操作;在 程序中需要查看联系人信息,应提供显示、查看功能;要实现修改和删除联系人功能,所以 应提供对文件的修改和删除操作。 3总体设计总体设计 以下分析整个系统,根据上面的需求分析,可将这个系统的设计分为四大模块(如图一) : 第 2 页 图一 系统功能模块图 4详细详细设计设计 【详细设计】 1. 主函数主函数 程序 main() /*主函数*/ menu(); 2. 主菜单主菜单
4、主菜单函数提供用户对系统功能的选择,包括浏览联系人、增加联系人、修改联系人、删 除联系人。该函数的流程图如图二所示。程序如下。 开始 显示一系列功能选项 输入 n,判断 n 是 否是 1-4? Y 第 3 页 图二 主菜单流程图 程序 void menu() /*菜单函数*/ int n=0,w1; do puts(“tt*主菜单*nn“); puts(“tttt1. 查看联系人“); puts(“tttt2. 增加联系人“); puts(“tttt3. 修改联系人信息“); puts(“tttt4. 删除联系人“); puts(“nntt*n“); printf(“ (请选择 1-4): b
5、b“); scanf(“%d“, if(n4) w1=1; getchar(); else w1=0; while(w1=1); switch(n) case 1:browse();break; /*浏览联系人模块*/ case 2:add();break; /*增加联系人模块*/ case 3:modify();break; /*修改联系人模块*/ case 4:del();break; /*删除联系人模块*/ 3数据结构设计数据结构设计 各联系人信息包括有姓名、电话号码、联系人类型、电子邮件。可以使用结构体数组, 则姓名、电话、类型和电子邮件作为结构体成员。 struct member /*联系人结构体*/ 根据 n 的值调用 各功能模块函数 结束 第 4 页 char name20; /*联系人姓名*/ char tel11; /*联系人电话*/ int type;