C语言程序的设计小组Word下载.docx
- 文档编号:14735038
- 上传时间:2022-10-24
- 格式:DOCX
- 页数:39
- 大小:420.82KB
C语言程序的设计小组Word下载.docx
《C语言程序的设计小组Word下载.docx》由会员分享,可在线阅读,更多相关《C语言程序的设计小组Word下载.docx(39页珍藏版)》请在冰豆网上搜索。
六、框架图*************************************6
七、流程图*************************************8
八、源程序清单*********************************12
九、程序测试***********************************26
十、结论、体会及建议***************************32
十一、附:
参考文献资料************************33
一、任务书
题目6:
小型通讯录设计
功能:
实现简单的通讯录信息管理,基本信息包括编号、、手机、邮编、地址、关系、性别、生日、QQ、.
基本要求:
1.设计简单的菜单,能够进行系统功能选择。
2.实现信息的录入功能。
3.在已有信息的基础上添加新的记录。
4.删除指定编号的记录。
5.复制指定编号的记录
6.实现信息的浏览功能
7.按编号查询功能
8.按手机号排序功能
二.小组成员情况
组长:
海霞学号:
5120110752负责:
文件导出、删除、排序、复制、输出
组员:
琳学号:
5120110723负责:
主菜单、添加、查询、保存退出
另外:
主函数,结构体定义,函数声明,文件及实验报告,虽有分工,但是大多数容是有两人讨论后共同完成的。
期间各自编写函数的过程中遇到的问题均由两人共同商讨,以及询问老师后,一起解决的。
三、总体设计
利用structrecord定义数据结构,用void声明函数,用开关语句switch,case分开事件进行程序,实现系统功能选择,利用if,while语句判断函数,for语句实现循环,利用printf和scanf进行输出与输入,用getch()输入字符串,最终实现通讯录功能。
通讯录中的记录项用结构体record表示,包含10个属性:
id、name、phone、address、postcode、、relation、QQ、sex、birthday分别代表用户的编号、、、地址、邮编、e_mail、关系、QQ、性别、生日。
1、结构体数组:
structrecord//定义一个结构体数组
{
charid[10];
//编号
charname[20];
//
charphone[20];
//
charadress[40];
//地址
charpostcode[10];
//邮编
chare_mail[30];
//e_mail
charrelation[20];
//关系
charQQ[20];
charsex[10];
//性别
charbirthday[20];
//生日
}student[500];
2、包括的函数:
voidmainmenu();
//主菜单
voidreadfromfile();
//读取文件
voidnewrecord();
//新添纪录
voidshowall();
//输出记录
voidsearchmenu();
//查询菜单
voidsearchbyid();
//按编号查询
voidsearchbyname();
//按查询
voidsearchbyphone();
//按查询
voiddeletemenu();
//删除菜单
voiddeleteall();
//删除所有
voiddeleteone();
//删除单个
voiddeletebyid();
//按编号删除
voiddeletebyname();
//按删除
voidlistmenu();
//排序菜单
voidlistbyid();
//按编号排序
voidlistbyname();
//按排序
voidcopy();
//复制菜单
voidwritetofile();
//保存退出
四、模块划分及功能
主模块:
main()//主函数
其他模块:
模块一:
//主菜单
模块二:
//读取文件
模块三:
//新添纪录
模块四:
//输出记录
模块五:
//查询菜单
模块六:
//按编号查询
模块七:
//按查询
模块八:
//按查询
模块九:
//删除菜单
模块十:
//删除所有
模块十一:
//删除单个
模块十二:
//按编号删除
模块十三:
//按删除
模块十四:
//排序菜单
模块十五:
//按编号排序
模块十六:
//按排序
模块十七:
//复制菜单
模块十八:
//保存退出
五、算法说明:
1.通讯录中的记录项用结构体record表示,包含10个属性。
2.主菜单:
利用switch语句进行选择所需功能;
输入“1”会进入“新添记录”的界面;
输入“2”进入“输出记录”的界面;
输入“3”会进入“查询菜单”的界面;
输入“4”进入“删除记录”的界面;
输入“5”进入“记录排序”的界面;
输入“7”进入“保存退出”的界面;
输入“8”进入“不保存退出”的界面。
3.添加记录:
利用printf()函数和scanf()函数实现按要求输入信息,再利用if()语句实现是否继续添加记录。
4.输出记录:
利用for循环和if语句实现全部输出;
5.查询菜单:
利用switch选择查询方式。
在查询菜单中输入“1”进入“按编号查询”界面;
输入“2”进入“按查询”界面;
输入“3”进入“按查询”
界面;
输入“4”进入“主菜单”界面。
6.按编号查询:
利用for循环从第一条记录到最后一条记录进行查找,再利用if语句判断要查找的记录和待比较的编号是否相等,如找到相同的记录,就输出此人的全部信息,如果没有找到就显示“没有此人的信息”。
7.按查询:
利用for循环从第一条记录到最后一条记录进行查找,再利用if语句判断要查找的记录和待比较的是否相等,如找到相同的记录,就输出此人的全部信息,再嵌一个if语句进行查找相同名字的人的信息,再嵌一个if语句继续查找,若不继续查找就输出“没有相同的学生纪录按任意键返回主菜单”,如果一开始没有找到就显示“没有此人的信息”。
8.按号查询:
利用for循环从第一条记录到最后一条记录进行查找,再利用if语句判断要查找的记录和待比较的是否相等,如找到相同的记录,就输出此人的全部信息,如果没有找到就显示“没有此人的信”。
9.删除菜单:
输入“1”会进入“删除所有”的界面;
输入“2”进入“删除单个”的界面;
输入“3”会进入“返回主菜单”的界面。
10.删除所有:
利用if语句进行是否全部删除。
11.删除单个:
利用switch语句选择删除方式,输入“1”进入“按删除”
输入“2”进入“按删除”界面。
11.按删除:
利用if语句进行判断是否有记录,再利用for循环进行查找信息,如果找到,就显示所有要删除的信息,再利用if语句进行是否删除,嵌for循环,把记录前移,嵌if语句实现是否继续删除。
12.按删除:
利用if语句进行判断是否有记录,再利用for循环进行查找信息,如果找到,就显示所有要删除的信息,再利用if语句进行是否删除,嵌for循环,把记录前移,嵌if语句实现是否删除相同的同学信息
13.利用switch语句实现排序选择,输入“1”会进入“按排序的界面;
输入“2”进入“按排序”的界面;
14.按排序:
利用for循环和if语句以及do….while实现升序,再利用if语句实现是否显示排序后的信息,调用显示函数。
15.按排序排序:
六、框架图:
七.流程图:
查找search流程图
删除delete流程图
排序list流程图
八、源程序清单
#include<
stdio.h>
stdlib.h>
string.h>
//控制字符串
conio.h>
//控制台输入输出
intnum=0;
//外部变量num为文件中的纪录数
FILE*p;
//定义一个指向文件的指针变量p
voiddeletebyphone();
//按删除
voidlistbyphone();
voidmain()
readfromf
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 程序 设计 小组