- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言程序设计111
《C语言程序设计》课程设计报告
专业: 电气工程及其自动化
班级: 101
学号: 2010055117
姓名: 刘嘉星
指导教师: 杨莉
完成日期:2011年06月23日
山东工商学院
信息与电子工程学院
课程设计目的:
通过C语言程序设计课程中的实践来巩固课堂中所学习到的知识,提高并加强学生的程序编译能力。培养学生的自主分析问题和解决问题的能力,课堂上在教师辅助的前提下自行完成题目。
设计题目及实现:
题目:手机通讯录管理系统
需求分析
手机通信录采用文件存储,因而要提供文件的输入输出操作;查看功能要提供显示操作;增加新数据的过程要检查是否有重复,存储空间是否已满,且录入的新数据能按递增的顺序自动进行条目编号,因而要提供查找、统计和排序操作;要提供修改与删除和自动调整编号功能;另外还要提供键盘式选择菜单以实现功能选择。
总体设计
整个系统可以设计为数据查看模块、数据添加模块、数据修改模块、数据删除模块。
详细设计
数据结构采用结构体,设计通信录结构体:
Struct communicationMethod
{
Char name[20]; //姓名
Char tel[12]; //电话号码
Int type; //分类:0表示办公类,1表示个人类,2表示商务类
Char email[20]; //电子邮件地址
Int num; //条目编号
}ComMtd;
(1)数据查看模块
通过菜单选择查看信息,然后选择办公类、个人类或者商务类,则显示所选类信息列表。这是一个查找与显示的过程,在手机通信录文件中查找type类型符合的记录,输出。
(2)数据添加模块
提示输入一条记录,将对通信录执行查找操作,查找姓名和电话号码字段,如不存在相同的记录,则用以追加方式写入文件,并给记录的条目字段赋值(在检查有无重复的过程中启动计数),否则提示“数据已经存在,请重新输入或者取消!”。
(3)数据修改模块
修改通信录信息,则需要读文件,判断信息是否是要修改的信息,如果是,修改,重新写入文件;否则直接重新写入文件。
(4)数据删除模块
通过菜单选择删除操作,由于C语言没有提供直接删除文件记录的函数,因而需要自己实现:读记录,判断是否要删除(与输入的要删除的记录比较),如果要删除,则舍弃;否则重新写入文件。
程序:
#include stdio.h
#include string.h
#include malloc.h
#include windows.h
int n=0;
struct communicationMethod
{
char name[20];
char phone[20];
char type;
char email[20];
struct communicationMethod *next;
};
void error()
{
printf(代码错误\n\n);
system( pause );
}
void output(struct communicationMethod *head)
{
struct communicationMethod *p1=head,*p2;
system(cls);
if(head==NULL)
{
printf(当前没有任何联系人信息\n\n);
system( pause );
return;
}
printf(电话联系薄(共%d条信息)\n\n,n);
for(;;)
{
p2=p1-next;
printf(姓名:%s\n,p1-name);
printf(电话:%s\n,p1-phone);
if(p1-type==A||p1-type==a)
printf(类别:办公类\n);
else if(p1-type==B||p1-type==b)
printf(类别:个人类\n);
else
printf(类别:商务类\n);
printf(邮箱:%s\n,p1-email);
printf(\n);
if(p1-next==NULL)
break;
p1=p2;
}
}
struct communicationMethod *new_in
您可能关注的文档
最近下载
- 数据安全基础知识培训ppt课件.pptx
- (高清正版行业标准)ANSIANS56.8-2002R2011.pdf
- 中国成人重症患者镇痛管理专家共识2023版.pptx VIP
- 数据交换接口规范V2.1(打印版).doc VIP
- 住院患者体验量表(IPEQ).doc VIP
- Power BI大数据财务报表智能可视化分析 教案全套 项目1--8 大数据理论内涵、财务报表分析概述与 power bi 软件介绍 ---Power BI上市公司现金流量表水平与垂直分析.docx
- 第二单元《燕赵大地连津门》第2课时《津冀之声》课件 人教版二年级音乐上册.pptx VIP
- 语言文字工作计划.docx VIP
- T_CMBA 018—2022_生物安全病原微生物安全数据单描述指南.pdf VIP
- 挖掘机1合格证.pdf VIP
文档评论(0)