C语言程序设计任务8 综合项目设计

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

8.4 综合应用
函数设计
名片添加任务需要用到的功能: 得到名片输入信息、打印名片供用户确认、保存确认后的名片信息、
修改名片总数。
名片修改任务需要用到的功能: 查找用户想要修改的名片、打印名片供用户确认、接收用户编辑的名
片信息、在文件中执
行名片编辑。
名片查找任务需要用到的功能: 确定当前有效的名片存储文件、查找用户指定条件的名片、打印查找
结果名片。
8.4 综合应用
函数设计
名片删除任务需要用到的功能:
查找用户指定条件待删除的名片、打印查找匹配结果名片
、删除名片 名片浏览任务需要用到的功能函数: 确定当前有效的名片存储文件、打印名片 名片输出备份任务需要用到的功能: 确定当前有效的名片存储文件、查找用户指定的备份项目 并输出到备份文件。
现让用户选择的菜单功能

8.4 综合应用
数据初始化模块的设计
(1)数据结构 struct card{ int no;/*编号*/ int group; /*分组号*/ char name[20]; /*姓名*/ char cphone[20]; /*手机号*/ char phone[20]; /*电话*/ char address[100]; /*地址*/ char email[50]; /*电子邮件地址*/ char note[100]; /*备注*/ }card;/*声明结构体的同时定义了一个全局变量*/
8.4 综合应用
数据初始化模块的设计
(2) 全局变量的定义 struct card{ int no; int group; char name[20]; char cphone[20]; char phone[20]; char address[100]; char email[50]; char note[100]; }card; /*用来临时存放用户输入的一个名片信息*/ FILE *f1p,*f2p,*fdp; /*三个指向存储文件的文件指针*/
8.4 综合应用
数据初始化模块的设计
(3) 数据初始化设计与实现
1.们采用txt文本文件存放名片(1.txt 和2.txt) 2. direct.txt(系统初始化的时候建立)来保存当前有效 文件标识(1或2)和当前最大名片编号
8.4 综合应用
系统菜单显示模块的设计与实现
8.4 综合应用
printf("请输入1-7选择相应的功能选项\n"); scanf("%d",&option); switch(option) { case 1:add_compact();break;/*调用名片添加模块*/ case 2:edit_compact();break; /*调用名片编辑模块*/ case 3:search_compact(0);break; /*调用名片查询模块*/ case 4:delete_compact();break; /*调用名片删除模块*/ case 5:load();break; /*调用名片浏览模块*/ case 6:transfer_compact();break; /*调用名片输出备份模块*/ case 7:introduction_compact();break; /*调用帮助模块*/ } printf("\t退出请按 Q\n"); printf("\t继续请按任意键\n"); o=getchar(); while(o=='\n') o=getchar(); printf("\n"); } }
8.4 综合应用
main() { int option; char o='y‘; /*系统初始化*/ /*初始化结束*/ while(o!='q'&&o!='Q') { printf("\n\n\n\t************************************************ **\n"); printf("\t * 欢迎使用名片管理系统! *\n"); printf("\t * *\n"); printf("\t * 1.添加新名片 *\n"); printf("\t * 2.编辑名片 *\n"); printf("\t * 3.查询名片 *\n"); printf("\t * 4.删除名片 *\n"); printf("\t * 5.浏览名片簿 *\n"); printf("\t * 6.名片输出备份 *\n"); printf("\t * 7.使用帮助 *\n"); printf("\t**************************************************\n\ n\n\n");
8.4 综合应用
8.4 综合应用
函数设计
本程序将设计许多可以重用的函数,例如保存一张名片、 打印一张名片、输出一张名片等等。这些函数可能会被多个功 能模块所调用,例如,添加名片需要用到输入名片函数接收一 张名片的输入、然后用打印名片函数把刚才输入的结果作为名
片的形式输出给用户看,经过用户确认后再用保存名片函数保
存结果。
ቤተ መጻሕፍቲ ባይዱ
8.4 综合应用
函数设计
所以,在主函数中,我们可以设计如下一些模块函数,例如: void add_compact(void); 完成名片添加任务 void edit_compact(void); 完成名片修改任务 void search_compact(int); 完成名片查找任务 void delete_compact(void); 完成名片删除任务 void load_compact(void); 完成名片浏览任务 void transfer_compact(void); 完成名片输出备份任务 然后,我们再根据每个模块函数的需要,设计一些具体的 功能函数,供他们调用。这些功能函数可以被多个模块函数调 用,提高里代码的重用率。
C语言程序设计
任务八 综合项目设计
8.1 本章要求
• 综合应用本书所学的知识 • 熟悉大程序设计过程 • 掌握综合程序设计方法
8.2 本章任务
8.3 综合应用
总体设计
本程序用模块图描述总体设计如下:
算法分析:用户可以根据 需要选择不同的功能来对 名片进行操作,所以,需 要用一个永真循环结合 switch….case 结 构 来 实
相关文档
最新文档