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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

本文(c语言程序设计通讯录.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

c语言程序设计通讯录.docx

1、c语言程序设计通讯录 长江大学工程技术学院C语言课程设计实习报告 通讯录管理系统 学生姓名:吴正杰 学 号:201461031 序 号:19 专业班级:计科61031 指导老师:刘旨阳 报告日期: 201576 1.需求分析根据题目要求,通讯录保存在文件中,要提供文件的输入和输出能力;还有就是要提供通讯录添加(个人信息包括姓名、邮编、住址、电话号码、QQ、电子邮件等)、删除、显示、修改等基本功能。2.概要设计系统总体设计是信息的输入、信息的编辑和退出。系统功能模块如下:3.详细设计1.输出通讯录用于让使用者观看通讯录里所有的信息。2.通讯录里无信息,所以要添加信息。用键盘逐个输入通讯录里联系人

2、的信息。 3.查找通讯录是让使用者可以通过姓名来查找通讯录里的联系人。 4.修改通讯录是让使用者通过姓名查找到通讯录里的联系人,然后其作出修改。 5.删除通讯录是用来按照联系人的姓名来单独删除通讯录中一些不想要的联系人。 是6.排序通讯录联系人来进行开头的首写字母排序。7.退出通讯录。4.主要源程序代码void menu(); /定义的函数void newrecord();void xiugai();void shanchuname();void chazhaoname();void xianshi();int daoruwenji();void save();void paixu();str

3、uct friends /定义的数组 char name8; char addr14; char pc7; char e_mail14; char QQ10; char tel12;frd500; int NO = 10; /宏定义 k定义为删除联系人的个数 m定义为添加联系人的个数 NO定义为原始通讯录中的联系人的个数int k, m;FILE*fp;void menu() /主菜单 int a; printf(ntt |- 欢迎您使用通讯录管理系统1.0beat版 -|); printf( ntt| 1添加联系人;2删除联系人 ;3查找联系人 | ); printf( ntt| 4显示联系

4、人;5修改联系人 ;6排序联系人 7退出 | ); printf(ntt |-|); printf(ntt请选择您所所要的服务:); scanf(%d, &a); switch (a) case 1:newrecord(); break; case 2:shanchuname(); break; case 3:chazhaoname(); break; case 4:xianshi(); break; case 5:xiugai(); break; case 6:paixu(); break; case 7:exit(0); default: exit(0); int main() /主函数

5、daoruwenji(); while (1) /1是真的进行死循环 menu(); return 0;void xianshi() /打印所有的通讯录的人的信息 int i; fp = fopen(jk0119.txt, r); if (fp = 0) printf(nnnnt 电话簿文件不存在); exit(0); printf(nn*欢迎使用通讯录*); printf(n 姓名 地址 邮编 e_mail QQ 手机号); for (i = 0; i NO-k+m; i+) fscanf(fp, %s%s%s%s%s%s, frdi.name, frdi.addr, frdi.pc, fr

6、di.e_mail, frdi.QQ, frdi.tel); for (i = 0; i 0)/统计文件的字节是否为0 rewind(fp); printf(nnnnt tttt 文件导入成功); printf(ntttt t 按任意键返回主菜单); fclose(fp); getch(); return(0) ; printf(nnnnttt文件导入成功); printf(nttt电话簿文件中无任何纪录); printf(nttt按任意键返回主菜单); fclose(fp); getch(); return(0); void save() /对修改的函数进行保存到txt文本中 int i;

7、if (fp = fopen(jk0119.txt, w) = 0) printf(ntttt打开失败); for (i = 0; i NO-k+m; i+) fprintf(fp, %st%14s%7s%14s%10s%12sn, frdi.name, frdi.addr, frdi.pc, frdi.e_mail, frdi.QQ, frdi.tel); /打印出文件的信息 printf(nt 保存文件成功 ); fclose(fp);void newrecord() /新建一个新的联系人 printf(ntt*请输入联系人信息*); printf(ntt 输入联系人的姓名 ); scan

8、f(%s, &frdNO-k+m.name); for (int i = 0; i NO-k+m; i+) if (strcmp(frdNO.name, frdi.name) = 0) printf(nnt姓名重复请重新新建联系人); newrecord(); printf(ntt 输入联系人的地址 ); scanf(%s, &frdNO - k + m.addr); printf(ntt 输入联系人的邮编 ); scanf(%s, &frdNO - k + m.pc); printf(ntt 输入联系人的e_mail ); scanf(%s, &frdNO - k + m.e_mail);

9、printf(ntt 输入联系人的QQ ); scanf(%s, &frdNO - k + m.QQ); printf(ntt 输入联系人的手机号码 ); scanf(%s, &frdNO - k + m.tel); if (strlen(frdNO - k + m.tel) = 11) printf(输入的电话号码合法); else printf(请重新输入11位合法的数字); scanf(%s, &frdNO - k + m.tel); m+; save(); printf( 是否继续添加新联系人(y/n): ); if (getch() = y) newrecord(); void sh

10、anchuname() /对联系人信息进行全部的删除 int i,j; char name14; printf(ntt 输入联系人的姓名 ); fflush(stdin); scanf(%s, name); for (i = 0; i NO-k+m; i+) if (strcmp(name, frdi.name) = 0) printf(%8s%14s%7s%14s%10s%12sn, frdi.name, frdi.addr, frdi.pc, frdi.e_mail, frdi.QQ, frdi.tel); printf(nnt 是否删除该联系人的所有信息(y/n):); if (getc

11、h() = y) for (j = i; j NO - k + m - 1; j+) frdj = frdj + 1; k+; printf(nt已经删除了该联系人); save(); printf(nt是否继续删除联系人(y/n):); if (getch() = y) shanchuname(); menu(); printf(nnt通讯录中不存在该联系人);void chazhaoname() /查找通讯录里的联系人 int i; char name14; printf(nt 输入联系人的姓名 ); fflush(stdin); scanf(%s,name); for (i = 0; i

12、 NO-k+m; i+) if (strcmp(name, frdi.name) = 0) printf(%8s %14s %7s %14s %10s %11s n, frdi.name, frdi.addr, frdi.pc, frdi.e_mail, frdi.QQ, frdi.tel); menu(); void xiugai() /对联系人的部分信息进行修改 int i, a; char name14; printf(nnt 输入联系人的姓名 ); fflush(stdin); scanf(%s, name); for (i = 0; i NO-k+m; i+) if (strcmp(

13、name, frdi.name) = 0) printf(%8s%14s%7s%14s%10s%13sn, frdi.name, frdi.addr, frdi.pc, frdi.e_mail, frdi.QQ, frdi.tel); printf(nnt 是否确定修改该联系人(y/n):); if (getch() = y) printf(nnt*); printf(n t 1姓名 2地址 3邮编 ); printf(n t 4邮箱 5QQ 6手机号码 7返回 ); printf(nnt*n); printf(nt请输入序号); scanf(%d, &a); switch (a) case

14、1: printf(姓 名:); scanf(%s, frdi.name); break; case 2: printf(地 址:); scanf(%s, frdi.addr); break; case 3: printf(邮 编:); scanf(%s, frdi.pc); break; case 4: printf(邮 箱:); scanf(%s, frdi.e_mail); break; case 5: printf(Q Q:); scanf(%s, frdi.QQ); break; case 6: printf(11位手机号码:); scanf(%s, frdi.tel); break

15、; case 7:menu(); default: xiugai(); printf(ntt您的修改结果为:); printf(nt姓 名:%s, frdi.name); printf(nt地 址:%s, frdi.addr); printf(nt邮 编:%s, frdi.pc); printf(nt邮 箱:%s, frdi.e_mail); printf(ntQ Q:%s, frdi.QQ); printf(nt手机号码:%12s, frdi.tel); save(); return; else menu(); printf( n n);void paixu() /对联系人进行按字母进行排序

16、 struct friends fr500; struct friends t; int i, j; for (i = 0; iNO-k+m; i+) fri = frdi; for (i = 0; iNO-k+m - 1; i+) for (j = 1; j 0) t = fri; fri = frj; frj = t; printf(nn 姓名 地址 邮编 e_mail QQ 手机号n); for (i = 0; iNO-k+m; i+) printf(%8s%20s%7s%14s%10s%12sn, frdi.name, frdi.addr, frdi.pc, frdi.e_mail,

17、frdi.QQ, frdi.tel); Save(); 本程序中大量使用了结构体和结构体数组,系统的功能模块都是使用子函数完成的,子函数中也存在大量结构体数组。5.调试分析过程描述1.软件进入界面后按任意键进入主菜单:2在软件后面按4导入和显示所有的联系人。3在菜单栏接着按3查找通讯录里的任意联系人。4在菜单栏接着按5进行联系人的姓名 地址 邮编 邮箱 QQ号 手机号码的修改。5.在菜单栏中选择2进行单个联系人删除。6.在菜单栏中选择6进行对所有的联系人进行排序。7.退出通讯录。 6.课程设计总结课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程. C语言已经成为当今计算机应用中空前活跃的领域, 在生活中可以说得是无处不在。因此作为计算机专业的大学来说掌握C语言程序的开发技术是十分重要的。通过这次编程实践,巩固了c语言的知识,对c语言的内容有了进一步的了解,增强了动手能力,感受到了c语言的奥妙,找到了学习编程的乐趣。同时在编程过程中,也发现了自身学习态度的问题。由于课后又没及时时间去复习,造成了许多知识的缺多识不能很好的运用,编写过程面临困难。事实告诫了我:今后上课一定要认真听讲,及时复习,多动手去编程,增强实践能力。指导教师评语:报告成绩:指导教师签名: 年 月 日

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1