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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

C语言程序设计通讯录实践报告.docx

1、C语言程序设计通讯录实践报告一、任务与具体要求设计一个某公司通讯录管理系统,以解决传统客户信息管理方式的诸多不便和弊端。二、设计说明书包括的内容1.问题概述2.系统需求分析三、 应完成的图纸功能模块图四、 评语及成绩指导教师(签字)_年_月_日目录1.课题题目及任务要求2.系统需求分析3.系统概要设计4.源程序5.系统测试及调试6.编程遇到的困难及解决办法7.总结心得8.参考文献1 课题题目及任务要求 设计一个某公司通讯录管理系统,以解决传统客户信息管理方式的诸多不便和弊端。2 系统需求分析 在客户的日常管理中,经常需要对客户的相关信息进行处理,采用传统的手工记录,查询方式,显然有很多不便,如

2、多次的增、删、改可能使记录变得混乱,为今后的信息提取带来很多麻烦。为了解决这一问题,可采用现代化的手段计算机进行系统的管理。这样可大大提高管理的质量和效率,并且使客户的日常管理也从手工操作中解脱出来,减少纸制材料的数量,对日常信息的查询、方便、快捷。因此,基于这些方面的考虑,决定开发本系统。3 系统概要设计3.1系统的主要功能 系统的主要功能是实现基本的客户的数据管理和维护。主要包括:1.添加成员的基本信息2.查看成员的信息3.删除信息4.修改成员信息5.保存信息和退出系统等功能3.2 系统的总体结构 添加:可以添加客户信息记录,依次输入姓名、年龄、电话号码、地址、电子邮箱后,会提示是否继续添

3、加。显示:可以以表格形式输出所有客户信息里的记录删除:输入欲删除的那个人的名字或者年龄后,会自动删除他(她)的记录内容查询:可以选择用姓名、电话二种方式查询 保存:,输入文件名(带后缀名)后,即可将客户信息信息保存3.3 系统软硬件环境 本程序所适用的计算机系统软硬件环境要求为: 硬件环境: PentiumIII500以上内存:256M 软件环境: Windows XP3.4 数据结构设计 客户信息数据结构类型如下:struct telephone char client_name20; char client_telephone15; char client_address30; ; 4源程

4、序 #include #include #define N 100 void input();void amend();void delete_client();void demand_client();void collect_telephone();void save_client(struct telephone message); void demand_name();void demand_telephone();struct telephone char client_name20; char client_telephone15; char client_address30; ;

5、 void main() char choice10=; int len=0; while (choice0!=0) printf(t=电话本号码查询系统=n); printf(tt 1、添加新联系人n); printf(tt 2、修改联系人信息n); printf(tt 3、删除联系人信息n); printf(tt 4、联系人信息查询n); printf(tt 5、联系人信息显示n); printf(tt 0、退出n); printf(t=n); printf(请选择(0-5):); scanf(%s,choice); len=strlen(choice); if (len1) printf

6、(请输入0-5之间的整数n); printf(按任意键返回主菜单n); getchar(); getchar(); continue; switch (choice0) case 1: input(); break; case 2: amend(); break; case 3: delete_client(); break; case 4: demand_client(); break; case 5: collect_telephone(); break; default: break; void input() struct telephone message; char reply=y

7、; char save=y; while (reply=y) printf(用户姓名:); scanf(%s,message.client_name); printf(电话号码:); scanf(%s,message.client_telephone); printf(通讯地址:); scanf(%s,message.client_address); save_client(message); printf(要继续吗?(y/n):); scanf( %c,&reply); printf(按任意键返回主菜单n); getchar(); getchar(); void save_client(st

8、ruct telephone message) FILE *fp; fp=fopen(message.txt,a+); if (fp!=NULL) fwrite(&message,sizeof(struct telephone),1,fp); else printf(n打开文件时出现错误,按任意键返回n); getchar(); return; fclose(fp); void amend() struct telephone message; FILE *fp; char amend_name20; char reply=y; char found=y; char save=y; int s

9、ize=sizeof(struct telephone); while (reply=y) found=n; fp=fopen(message.txt,r+w); if (fp!=NULL) printf(n请输入要修改的姓名:); scanf(%s,amend_name); while (fread(&message,size,1,fp)=1) if (strcmp(amend_name,message.client_name)=0) found=y; break; if (found=y) printf(=n); printf(n用户姓名:%sn,message.client_name);

10、 printf(n电话号码:%sn,message.client_telephone); printf(n通讯地址:%sn,message.client_address); printf(=n); printf(修改用户信息:n); printf(n用户姓名:); scanf(%s,message.client_name); printf(n电话号码:); scanf(%s,message.client_telephone); printf(n通讯地址:); scanf(%s,message.client_address); printf(n要保存吗?(y/n):); scanf( %c,&s

11、ave); if (save=y) fseek(fp,-size,1); fwrite(&message,sizeof(struct telephone),1,fp); else printf(无此人信息!n); else printf(打开文件时出现错误,按任意键返回n); getchar(); return; fclose(fp); printf(要继续吗?(y/n):); scanf( %c,&reply); printf(按任意键返回主菜单n); getchar(); getchar(); void delete_client() struct telephone messageN;

12、struct telephone temp_str; struct telephone delete_str; int i=0,j=0; char reply=y; char found=y; char confirm=y; char delete_name20; FILE *fp; while (reply=y) fp=fopen(message.txt,r); if (fp!=NULL) i=0; found=n; printf(n请输入姓名:); scanf(%s,delete_name); while (fread(&temp_str,sizeof(struct telephone),

13、1,fp)=1) if (strcmp(delete_name,temp_str.client_name)=0) found=y; delete_str=temp_str; else messagei=temp_str; i+; else printf(打开文件时出现错误,按任意键返回n); getchar(); return; fclose(fp); if (found=y) printf(=n); printf(用户姓名:%sn,delete_str.client_name); printf(电话号码:%sn,delete_str.client_telephone); printf(通讯地

14、址:%sn,delete_str.client_address); printf(=n); else printf(无此人信息,按任意键返回n); getchar(); break; printf(确定要删除吗?(y/n):); scanf( %c,&confirm); if (confirm=y) fp=fopen(message.txt,w); if (fp!=NULL) for(j=0;j3) printf(请输入1-3之间的整数n); printf(按任意键返回菜单n); getchar(); continue; if (choice=1) demand_name(); else if

15、 (choice=2) demand_telephone(); void demand_name() struct telephone message; FILE *fp; char amend_name20; char reply=y; char found=y; while (reply=y) found=n; fp=fopen(message.txt,r+w); if (fp!=NULL) printf(n请输入姓名:); scanf(%s,amend_name); while (fread(&message,sizeof(struct telephone),1,fp)=1) if (s

16、trcmp(amend_name,message.client_name)=0) found=y; break; if (found=y) printf(=n); printf(用户姓名:%sn,message.client_name); printf(电话号码:%sn,message.client_telephone); printf(通讯地址:%sn,message.client_address); printf(=n); else printf(无此人信息!n); else printf(打开文件时出现错误,按任意键返回n); getchar(); return; fclose(fp);

17、 printf(要继续吗?(y/n):); scanf( %c,&reply); printf(按任意键返回主菜单n); getchar(); getchar(); void demand_telephone() struct telephone message; FILE *fp; char telephone20; char reply=y; char found=y; while (reply=y) found=n; fp=fopen(message.txt,r+w); if (fp!=NULL) printf(n请输入电话号码:); scanf(%s,telephone); while

18、 (fread(&message,sizeof(struct telephone),1,fp)=1) if (strcmp(telephone,message.client_telephone)=0) found=y; break; if (found=y) printf(=n); printf(用户姓名:%sn,message.client_name); printf(电话号码:%sn,message.client_telephone); printf(通讯地址:%sn,message.client_address); printf(=n); else printf(无此电话号码的有关信息!

19、n); else printf(打开文件时出现错误,按任意键返回n); getchar(); return; fclose(fp); printf(要继续吗?(y/n):); scanf( %c,&reply); printf(按任意键返回主菜单n); getchar(); getchar(); void collect_telephone() struct telephone message; FILE *fp; fp=fopen(message.txt,r); if (fp!=NULL) while (fread(&message,sizeof(struct telephone),1,fp

20、)=1) printf(n用户姓名:%sn,message.client_name); printf(联系电话:%sn,message.client_telephone); printf(通讯地址:%snn,message.client_address); else printf(打开文件时出现错误,按任意键返回n); getchar(); return; fclose(fp); printf(按任意键返回主菜单n); getchar(); getchar(); 5 系统测试及调试主菜单1.添加新联系人2.修改联系人信息3.删除联系人4.联系人信息查询两种查询方式5.显示所有联系人6.输入0退

21、出系统6.编程遇到的困难及解决办法在本次实习过程中碰到的编译、连接的错误主要有:(1)缺少变量定义,定义位置不正确;前后有些变量前后定义和使用不一致,在错误信息的提示下一般还是很容易找到。需要注意的是有些函数使用同样的变量名而表示不同的作用,因而使用要很小心,定义及定义的位置要特别留意。为减少这样的错误我后来还是用不同的变量名来表示,结果引起的那些错误解决了。(2)语法错误;一些语法错误在信息框的提示下一般是能够排除的。7 总结心得 在这个星期里,我们专业的学生在专业老师的带领下进行了c语言程序实习学习。在这之前,我们已经对c语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在了

22、解的范围,对里面的好多东西还是很陌生,更多的在运用起来的时候还是感到很棘手,毕竟,万事开头难嘛。 由于时间的关系,我们的这次实习课程老师并没有给我们详细的介绍,只是给我们简单的介绍了几个比较重要的实际操作。包括了主界面、添加新联系人等比较重要的程序设计思路。 上机实验是学习程序设计语言必不可少的实习环节,特别是c语言灵活、简洁,更需要通过编程的实习来真正掌握它。对于程序设计语言的学习目的,可以概括为学习语法规定、掌握程序设计方法、提高程序开发能力,这些都必须通过充分的实际上机操作才能完成。通过上机实验来验证自己编制的程序是否正确,恐怕是大多数同学在完成老师作业时的心态。但是在程序设计领域里这是一定要克服的传统的、错误的想法。因为在这种思想支配下,可能你会想办法去掩盖程序中的错误,而不是尽可能多地发现程序中存在的问题。自己编好程序上机调试运行时,可能有很多你想不到的情况发

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

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