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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

通讯录程序设计.docx

1、通讯录程序设计学生通讯录系统学校:中北大学姓名:张泽新学号:1314010132班级:A02学院:软件学院指导教师:尹四清题目:学生通讯录实训目的:掌握C语言的基本语法规则,以及深入理解函数的调用,指针,结构体和链表的相关知识点。做好项目的具体分析。实训内容:完成对学生通讯录程序调试以及运行实训内容:设计一个实用的小型通讯录程序,具有添加,查询和删除功能。由姓名,电话号码1,电话号码2,QQ号组成,姓名可以由字符和数字混合编码。电话号码可由字符和数字组成。实现功能:实训要求:(1)系统应显示这样的菜单,请选择系统功能项:a信息录入功能b信息浏览功能c信息查询功能((按姓名查询)d信息修改功能e

2、系统退出功能(2)执行一个具体的功能之后,程序将重新显示菜单。(3)将通讯录基本信息保存到文件中。*总体设计模块和程序规划结构图如图1.0,其中包含各个函数的调用程序详细结构图以及涉及到的核心代码:录入信息结构图1.1开始Y N是否继续输入学生信息调用输入函数调用菜单函数结束voidinput_record1()/输入函数总,包含了创建学生还有指针移动/voidprint_menu_main();/输入菜单charcontinue_input=N;/判断是否继续输入stu*pLastStu=NULL;/最后学生的指针stu*pNewStu=(stu*)malloc(sizeof(stu);/创

3、建学生节点返回其地址,这是链表pNewStu-next=NULL;/节点的指针指向空create_stu_by_input(pNewStu);/创建一个学生if(head=NULL)head=pNewStu;elsepLastStu=get_last_student(head);/移动指针pLastStu-next=pNewStu;/连接节点printf(继续输入学生成绩?(Y继续,N返回菜单);getchar();continue_input=getchar();if(continue_input=n|continue_input=N)print_menu_main();elseinput_

4、record1();输出函数结构图以及核心代码输出表头结构依次打印表中的元素输出表尾结构返回菜单函数结束voidshow_record1()/输出函数总:包含了三部分表格头,表格尾巴,含有学生信息voidprint_menu_main();/stu*p=head;print_table_head();while(p!=NULL)print_table_row(p);p=p-next;print_table_buttom();printf(按任意键返回菜单.n);getch();print_menu_main();保存文件结构图以及核心代码开始确定文件名以及文件是用来写的yWhile循环,是否头

5、指针为空?n结束循环关闭流把学生信息写进文件中结束voidsave_to_file1()/保存文件总voidprint_menu_main();/所调用的函数的声明voidsave_to_file();FILE*fp;charfile100;stu*p=head;printf(请输入文件名:);scanf(%s,file);save_to_file();fp=fopen(file,w);while(p!=NULL)fprintf(fp,%d%s%s%s%s%sn,p-xuhao,p-num,p-name,p-sex,p-QQ,p-phone);p=p-next;fclose(fp);print

6、f(保存成功!n按任意键返回菜单.n);getchar();getchar();print_menu_main();加载信息结构图以及核心代码开始把链表释放掉,使链表为空输入文件名字,格式设置为读取是否遇到输入文件结束的标志?y n结束循环从文件中读取信息然后连接成单链表结束voidload_from_file1()/重新加载函数总voidprint_menu_main();voidclear_record(stu*p);/所调用的函数声明FILE*fp;charfile100;clear_record(head);/*释放整个链表*/stu*p=head,*q;printf(请输入文件名:)

7、;scanf(%s,file);fp=fopen(file,r);stu*pLastStu=NULL;while(!feof(fp)/如果未遇到输入文件的结束标志stu*pNewStu=(stu*)malloc(sizeof(stu);pNewStu-next=NULL;fscanf(fp,%d%s%s%s%s%s,&(pNewStu-xuhao),pNewStu-num,pNewStu-name,pNewStu-sex,pNewStu-QQ,pNewStu-phone);if(head=NULL)/指针移动head=pNewStu;elsepLastStu=get_last_student(

8、head);pLastStu-next=pNewStu;/将链表连接起来/释放加载后的空间q=head;while(q-next-next!=NULL)q=q-next;free(q-next);q-next=NULL;fclose(fp);printf(装载成功!n按任意键返回菜单.n);getchar();getchar();print_menu_main();按名字查询信息核心代码以及结构图开始请输入要查询的名字初始化名字Y n是否与输入的名字相等得到学生信息的指针 移动指针输出要查询的学生是信息结束voidinquire_name1()voidprint_menu_main();stu

9、*p=head;charname20;printf(n请输入你要查询的名字:);scanf(%s,&name);while(strcmp(p-name,name)!=0)p=p-next;if(p=NULL)printf(n你所输入的学生暂时不存在);printf(按任意键返回菜单.n);getch();print_menu_main();system(cls);printf(n该学生的有关信息n);printf(+-+-+-+-+-+-+n);printf(| 序号 | 学号 | 姓名 | 性别| QQ | 电话 |n);printf(+-+-+-+-+-+-+n);printf(|%10d

10、|%10s|%10s|%10s|%10s|%11s|n,p-xuhao,p-num,p-name,p-sex,p-QQ,p-phone);printf(+-+-+-+-+-+-+n);printf(按任意键返回菜单.n);getch();print_menu_main();信息修改核心代码以及流程图开始输入要修改学生的名字y是否找到要修改的学生n得到指针,修改信息移动指针结束voidrevise_message()printf(输入要修改的学生的姓名:n);scanf(%s,name);while(strcmp(p-name,name)!=0)p=p-next;/寻找要修改的学生if(p=NU

11、LL)printf(n你所输入的学生暂时不存在);printf(按任意键返回菜单.n);getch();print_menu_main();elseprintf(n 您要修改那一项?n);printf(n 1序号n);printf(n 2学号n);printf(n 3姓名n);printf(n 4性别n);printf(n 5QQn);printf(n 6电话n);scanf(%d,&choice);switch(choice)case1:printf(n 请输入修改后的序号n);scanf(%s,&p-xuhao);break;case2:printf(n 请输入修改后的学号n);scanf

12、(%s,p-num);break;case3:printf(n 请输入修改后的姓名n);scanf(%s,p-name);break;case4:printf(n 请输入修改后的性别n);scanf(%s,p-sex);break;case5:printf(n 请输入修改后的QQn);scanf(%s,p-QQ);break;case6:printf(n 请输入修改后的电话n);scanf(%s,p-phone);break;system(cls);printf(修改信息成功n);printf(按任意键返回菜单.n);getch();print_menu_main();程序运行截图1输入学生的成绩截图2显示学生的信息截图3保存文件截图4读取

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

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