ImageVerifierCode 换一换
格式:DOC , 页数:33 ,大小:235KB ,
资源ID:7510370      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-7510370.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C语言课程设计课程报.doc)为本站会员(HR专家)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

C语言课程设计课程报.doc

1、C 语言课程设计实习报告学生姓名:学生学号:所在班级:任课教师:课程成绩:中国地质大学(武汉)2009 年 7 月 4 日2009 年 7 月 11 日通讯录管理系统 beta【题目要求】具有数据插入、修改、删除、显示和查询功能的电话簿管理程序。(1) 数据包括:人名、工作单位、电话号码和 E-mail地址。(2) 可对记录中的姓名和电话号码进行修改。(3) 可增加或删除记录。(4) 可显示所有保存的记录。(5) 可按人名或电话号码进行查询。提示建议采用结构体数组和文件系统实现。结构体成员包括人名、工作单位、电话号码和E-mail地址。【需求分析】根据题目要求,通讯录数据以文本文件存储,故应提

2、供文件的输入、输出等操作;还应提供显示、查找、删除等操作;另外还应提供键盘式选择菜单实现功能选择。【总体设计】通过对整个系统的分析,根据上述要求,可以将这个系统的设计分为三个模块(见图 1):文件导入、通讯录编辑和退出。通讯录管理系统新建菜单 浏览菜单 修改菜单 删除菜单查找菜单图 1 系统功能模块【详细设计】 主函数主函数一般设计得比较简洁,只提供部分提示语及部分功能模块函数的调用。程序void main() printf(“ntt :)欢迎使用通讯录管理系统 beta“);printf(“ntt(_0) /*文件不为空*/ rewind(fp); /*文件位置指针移动到文件开始位置*/ f

3、or (NO=0;!feof(fp) NO+); printf(“nnnntttt :)文件导入成功“); printf(“ntttt 按任意键返回主菜单“); getch(); return(NO); printf(“nnnnttt :)文件导入成功“); printf(“nttt+_+电话簿文件中无任何纪录“); printf(“nttt 按任意键返回主菜单“); getch(); return(NO); (2) 文件保存函数程序void savefile() int i; if (fp=fopen(“student.txt“,“wb“)=0) printf(“ntt+_+文件打开失败!n

4、“); for (i=0;i #include #include #include struct record char name20; char phone20; char adress40; char e_mail30; contact500;int NO=0;FILE *fp;void mainmenu(); void newrecord();void browsemenu();void searchmenu(); void searchname(); void searchphone();void modifymenu(); void deletemenu();void deletea

5、ll(); void deletesingle();void deletename();void deletephone();int loadfile(); void savefile(); void main() printf(“ntt :)欢迎使用通讯录管理系统 beta“);printf(“ntt(_) 文件导入中请稍后nnnnn“); system(“cls“);loadfile();while (1) mainmenu(); void mainmenu() char choice; system(“cls“); printf(“ntt* 主菜单 *“); printf(“ntt* 1

6、-新建菜单 *“); printf(“ntt* 2-浏览菜单 *“);printf(“ntt* 3-查找菜单 *“); printf(“ntt* 4-修改菜单 *“);printf(“ntt* 5-删除菜单 *“); printf(“ntt* 6-退 出 *“); printf(“ntt*“); printf(“ntt请选择:“); choice=getch(); switch (choice) case 1:newrecord();break; case 2:browsemenu();break; case 3:searchmenu();break; case 4:modifymenu();

7、break; case 5:deletemenu();break;case 6:exit(0);default:mainmenu(); void newrecord() printf(“ntt* 请输入联系人信息 *n“); printf(“ntt输入姓名:“); scanf(“%s“, printf(“ntt输入电话号码:“); scanf(“%s“,printf(“ntt输入工作单位:“); scanf(“%s“,printf(“ntt输入 E-mail:“); scanf(“%s“,NO+;savefile(); printf(“ntt是否继续添加?(y/n):“); if (getch

8、()=y) newrecord();return; void browsemenu() int i; system(“cls“); if(NO!=0) printf(“ntt* 以下为通讯录所有信息*“); for (i=0;iNO;i+) printf(“ntt姓 名: %s“,contacti.name); printf(“ntt联系电话: %s“,contacti.phone); printf(“ntt工作单位: %s“,contacti.adress); printf(“ntt E-mail: %s“,contacti.e_mail); printf(“tt“); if (i+1NO)

9、 printf(“ntt_“); system(“pause“); printf(“ntt*“); else printf(“ntt+_+通讯录中无任何纪录“); printf(“ntt按任意键返回主菜单:“); getch(); return; void searchmenu() char choice; system(“cls“); printf(“ntt* 查找菜单 *“); printf(“ntt* 1-按姓名查找 *“); printf(“ntt* 2-按电话查找 *“); printf(“ntt* 3-返回主菜单 *“); printf(“ntt*“); printf(“ntt请选

10、择:“); choice=getch(); switch (choice) case 1:searchname();break; case 2:searchphone();break; case 3:mainmenu();break; void searchname() int mark=0; int i; int a=0;char name20; printf(“ntt* 按姓名查找 *“); printf(“ntt请输入姓名:“); scanf(“%s“,name); for(i=a;iNO;i+) if (strcmp(contacti.name,name)=0) printf(“ntt

11、* 以下是您查找的联系人信息 *“); printf(“ntt姓 名: %s“,contacti.name); printf(“ntt联系电话: %s“,contacti.phone);printf(“ntt工作单位: %s“,contacti.adress); printf(“ntt E-mail: %s“,contacti.e_mail); printf(“ntt*“);printf(“ntt按任意键返回主菜单:“); mark+; getch(); return; return;if(mark=0) printf(“ntt没有该姓名的联系人纪录“); printf(“ntt按任意键返回主

12、菜单“); getch(); return; void searchphone() int mark=0; int i; int a=0; char phone10; printf(“ntt* 按电话查找 *“); printf(“ntt请输入电话:“); scanf(“%s“,phone); for(i=0;iNO;i+) if (strcmp(contacti.phone,phone)=0) printf(“ntt* 以下是您查找的联系人信息 *“); printf(“ntt姓 名: %s“,contacti.name); printf(“ntt联系电话: %s“,contacti.pho

13、ne); printf(“ntt工作单位: %s“,contacti.adress); printf(“ntt E-mail:%s“,contacti.e_mail); printf(“ntt*“); printf(“ntt按任意键返回主菜单:“); mark+; getch(); return; if (mark=0) printf(“ntt没有该联系人信息“); printf(“ntt按任意键返回主菜单“); getch(); return; void modifymenu() int mark=0; int i,k; int a=0;int t=0;char choice;char na

14、me20;struct record modify;system(“cls“);printf(“ntt请输入您要修改的姓名:“); scanf(“%s“,name); for(i=a;iNO;i+) if (strcmp(contacti.name,name)=0) k=i;mark=1;modify=contacti;printf(“ntt* 以下是您将修改的联系人信息 *“); printf(“ntt姓 名: %s“,contacti.name); printf(“ntt联系电话: %s“,contacti.phone);printf(“ntt工作单位: %s“,contacti.adre

15、ss); printf(“ntt E-mail: %s“,contacti.e_mail); printf(“ntt是否继续?y/n“);if(getch()=n)modifymenu();elseprintf(“ntt选择您要修改的选项:“);printf(“nttt(1).姓 名“);printf(“nttt(2).联系电话“);printf(“nttt(3).工作单位“);printf(“nttt(4). E-mail“);printf(“nttt(5).返 回“);printf(“ntt请选择: “);choice=getch();switch(choice) case 1: prin

16、tf(“姓 名:“); scanf(“%s“,contacti.name); break;case 2: printf(“联系电话:“); scanf(“%s“,contacti.phone); break;case 3: printf(“工作单位:“); scanf(“%s“,contacti.adress); break;case 4: printf(“ E-mail:“); scanf(“%s“,contacti.e_mail); break;case 5: mainmenu(); break;default: modifymenu();printf(“ntt您的修改结果为:“);pri

17、ntf(“ntt姓 名: %s“,contacti.name); printf(“ntt联系电话: %s“,contacti.phone);printf(“ntt工作单位: %s“,contacti.adress); printf(“ntt E-mail: %s“,contacti.e_mail); printf(“ntt确认修改?y/n“);if(getch()=n)contacti=modify;printf(“ntt修改未保存!“);else printf(“ntt+_+修改成功!“);savefile();mark=0;printf(“ntt是否继续修改?(y/n)“); if (ge

18、tch()=y) modifymenu(); if (mark=0) printf(“ntt+_+没有该联系人的纪录“); printf(“ntt是否继续修改?(y/n)“); if (getch()=y) modifymenu(); return;void deletemenu() char choice; if(NO=0) printf(“ntt对不起,文件中无任何纪录“); printf(“ntt按任意键返回主菜单“); getch(); return; system(“cls“); printf(“ntt* 删除菜单 *“); printf(“ntt* 1-删除所有 *“); prin

19、tf(“ntt* 2-删除单个 *“); printf(“ntt* 3-返回主菜单 *“); printf(“ntt*“); printf(“ntt请选择:“); choice=getch(); switch(choice) case 1:deleteall();break; case 2:deletesingle();break; case 3:mainmenu();break; default:mainmenu(); void deleteall() printf(“ntt确认删除?(y/n)“); if (getch()=y) if (fp=fopen(“contact“,“w“)=0)

20、 printf(“ntt+_+不能打开文件,删除失败“); loadfile(); NO=0; printf(“ntt_纪录已删除,按任意键返回主菜单“); getch(); fclose(fp);return; else return; void deletesingle() char choice; printf(“nttt1-按姓名删除“); printf(“nttt2-按号码删除“);printf(“nttt3-返回删除菜单“);printf(“ntt请选择:“); choice=getch(); switch (choice) case 1:deletename();break; c

21、ase 2:deletephone();break; case 3:deletemenu();break; void deletename() int i,j; int mark=0; char name20; printf(“ntt请输入要删除联系人姓名:“); scanf(“%s“,name); if(NO=0) printf(“ntt对不起,文件中无任何纪录“); printf(“ntt按任意键返回主菜单“); getch(); return; for (i=0;iNO;i+) if (strcmp(contacti.name,name)=0) printf(“ntt以下是您要删除的联系

22、人纪录:“); printf(“ntt姓 名: %s“,contacti.name); printf(“ntt联系电话: %s“,contacti.phone); printf(“ntt工作单位: %s“,contacti.adress); printf(“ntt E-mail: %s“,contacti.e_mail); printf(“ntt是否删除?(y/n)“); if (getch()=y) for (j=i;jNO-1;j+) contactj=contactj+1; NO-; mark+; printf(“ntt_删除成功“); savefile();printf(“ntt是否继续删除?(y/n)“); if (getch()=y) deletename(); return; else return; continue; if (mark=0) printf(“ntt没有该联系人的纪录“); printf(“ntt是否继续删除?(y/n)“); if (getch()=y) deletename(); return; void deletephone() int i,j; int mark=0; char phone20; printf(“ntt请输入要删除联系电话:“); scanf(“%s“,phone);

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报