欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    2022年C语言学生通信录管理系统课程设计报告.pdf

    • 资源ID:12785719       资源大小:134.04KB        全文页数:16页
    • 资源格式: PDF        下载积分:4.3金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要4.3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    2022年C语言学生通信录管理系统课程设计报告.pdf

    实验名称 :学生通信录管理系统实验项目性质:综合性、设计性所涉及课程: C语言课程设计计划学时:实验学时4一、实验目的综合考察学生本学期对C语言的掌握程度。二、实验内容1. 编写一个可以把学生信息写入文件的函数creact () ,采用动态链表。2. 编写一个可以增加新成员的函数add1() 。3 编写一个可以查询确定学生的函数search1 () 。4 编写一个可以删除确定学生的函数del1 () 。5 编写一个可以修改确定学生的函数modify1 () 。6 编写一个可以打开通信录的函数open1( ) 。附录: search1 函数调用 searchnum 和 searchname 函数,分别为按学号和按名字查询。 del函数调用 delname 和 deltel函数,分别为按名字和按电话删除。 modify1函数调用 modifynum 和 modifyname 函数,分别为按学号和按名字找到修改。open1 函数调用 sorttel和 sortname 函数,分别为按电话和按名字从小到大的顺序打开。精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 1 页,共 16 页 - - - - - - - - - - 三、实验(设计)仪器设备和材料清单1. 硬件: PC机 2. 软件: Turbo C Turbo C+ 四、实验要求设计一个学生通讯录管理系统 ,在动态链表程序的基础上,设计要求如下(必须使用结构体和动态链表等数据结构)1 建立文件存储文件使用指定文件名或默认文件名;可以不保存输入记录,但需要确认是否保存输入记录如果已有文件,只能在其后追加;新增记录可以不存入原文件中, 以可以用原来的文件覆盖内存的内容;可以将多个个文件记录合并到一个文件中;2 文件的存取和显示可以单独存取文件;可以随时显示内存中记录的全部内容;可以直接存取默认文件或指定文件;3 删除记录可以按“姓名”或“电话”方式删除记录并更新内存链表内容;能给出被删除的信息,输出没有找到的信息;如果已经是空表,上出时应给出信息并返回主菜单;精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 2 页,共 16 页 - - - - - - - - - - 如果没有要删除的信息,输出没有找到的信息;删除操作仅限于内存,只有执行记录时,才能覆盖原记录;4 查询记录可以按“姓名”或“电话”或“宿舍”方式查询记录能给出查询记录的信息;如果查询的信息不存在,输出没有找到的信息;5 整体功能 a 可以随时检索、删除、或增加新记录,保存或取消新的记录 b 使姓名可由 16 位字符和数字的混合编码组成 c使电话号码可由18 位字符和数字组成d 将输出信息加上输出信息信息栏,例如姓名电话性别年龄生日宿舍李四 1234 男 21 7月 1 日东二 333 e使用菜单实现功能的正确的选择 f 所有节点信息都是动态生成。6 测试程序应列出测试大纲对程序进行测试;应保证测试用例测试到程序的各种边缘情况五、实验步骤及结果测试A、主函数主函数精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 3 页,共 16 页 - - - - - - - - - - 提供可选择的功能1234560创建增加查找删除修改打开退出按名字、按学号按电话、按名字按名字、按学号按电话、按名字程序清单:void main()int i;end:printf( |-|n);printf( | new file |n);printf( | information |n);printf( | |n); printf(“ | |n);printf( | |n);printf( | |n);printf( | |n);printf( 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 4 页,共 16 页 - - - - - - - - - - |-|n);printf(input your choice(0-6):n); scanf(%d,&i); if(i=1)creat1(); goto end;if(i=2) add1(); goto end;if(i=3) search1(); goto end; if(i=4)del1(); goto end; if(i=5) modify1(); goto end; if(i=6) open1(); goto end; exit(0);B、创建: void create()精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 5 页,共 16 页 - - - - - - - - - - 程序清单:void creat1()开始动态申请内存输入学号学号不为0输入其他信息动态申请内存并输入学号结束链表的建立存入文件结束精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 6 页,共 16 页 - - - - - - - - - - FILE *fp;char i;struct student *p1,*p2,*head;n=0;p1=p2=(struct student *)malloc(LEN);printf(nenter NO.:n);scanf(%d,&p1-num);while(p1-num!=0)printf(enter name:n);scanf(%s,p1-name);printf(enter tel:n);scanf(%s,p1-tel);doprintf(enter sex:n);getchar();scanf(%c,&p1-sex);while(p1-sex!=f&p1-sex!=F&p1-sex!=m&p1-sex!=M);do精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 7 页,共 16 页 - - - - - - - - - - printf(enter age:n);scanf(%d,&p1-age);while(p1-ageage=150); printf(enter birthday:n);scanf(%s,p1-bir); printf(enter address:n);scanf(%s,p1-add);n=n+1;if(n=1)head=p1; else p2-next=p1;p2=p1; p1=(struct student *)malloc(LEN);printf(enter NO.:n); scanf(%d,&p1-num);p2-next=NULL;printf(nsave them or no(y/n)n);doprintf(input choicen);getchar();scanf(%c,&i);while(i!=y&i!=Y&i!=n&i!=N);if(i=y|i=Y)精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 8 页,共 16 页 - - - - - - - - - - p1=head;if(fp=fopen(FILENAME,wb)=NULL)printf(cannot open filen);return;if(p1!=NULL)doif(fwrite(p1,sizeof(struct student),1,fp)!=1)printf(file write errorn);fclose(fp);break;p1=p1-next;while(p1!=NULL);fclose(fp); C、增加 void add1()精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 9 页,共 16 页 - - - - - - - - - - 设计思路和创建新通信录一样,只是文件的打开方式是“a” ,即以追加的方式打开。程序清单:void add1()FILE *fp;char i;struct student *p1,*p2,*head;n=0;p1=p2=(struct student *)malloc(LEN);printf(nenter NO.:n);scanf(%d,&p1-num);while(p1-num!=0)printf(enter name:n);scanf(%s,p1-name);printf(enter tel:n);scanf(%s,p1-tel);printf(enter sex:n);getchar();scanf(%c,&p1-sex);精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 10 页,共 16 页 - - - - - - - - - - printf(enter age:n);scanf(%d,&p1-age); printf(enter birthday:n);scanf(%s,p1-bir); printf(enter address:n);scanf(%s,p1-add);n=n+1;if(n=1)head=p1;else p2-next=p1;p2=p1;p1=(struct student *)malloc(LEN);printf(enter NO.:n);scanf(%d,&p1-num);p2-next=NULL;printf(nsave them or no(y/n)n);doprintf(input choicen);getchar();scanf(%c,&i);while(i!=y&i!=Y&i!=n&i!=N);if(i=y|i=Y)p1=head;精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 11 页,共 16 页 - - - - - - - - - - if(fp=fopen(FILENAME,a)=NULL)printf(cannot open filen);return;if(p1!=NULL)doif(fwrite(p1,sizeof(struct student),1,fp)!=1)printf(file write errorn);fclose(fp);break;p1=p1-next;while(p1!=NULL);fclose(fp); D、查找 void search()精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 12 页,共 16 页 - - - - - - - - - - 程序清单 :1、开始选 择 按 名 字或 按 学 号 查按名字择调用Searchname()按学号择调用Searchnum()结束开始查 找 符 合节点找到则输出该节点内容找不到输出 “not find ”结束重建链表输入名字(电话)精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 13 页,共 16 页 - - - - - - - - - - void search1()int i;printf(please input your choice(0-2);printf( |-|n);printf( | in NO. |n);printf( | in name |n);printf( | |n);printf( |-|n); do printf(input your choice); scanf(%d,&i); while(i!=1&i!=2&i!=0); switch(i)case1: searchnum(); break;case2: searchname(); break;精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 14 页,共 16 页 - - - - - - - - - - default: exit(0); 2、void searchname()struct student *p1,*p2,*head;char name16;head=recreat();printf(enter the students name:n);scanf(%d,name);for(p1=head;p1-next!=NULL;p1=p1-next)if(strcmp(p1-name,name)=0)printf(,%dt%st%st%ct%dt%st%sn,p1-num,p1-name,p1-tel,p1-sex,p1-age,p1-bir,p1-add);3、void searchnum()精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 15 页,共 16 页 - - - - - - - - - - struct student *p1,*p2,*head;int num;head=recreat();printf(enter the students NO.:n);scanf(%d,&num);for(p1=head;p1-next!=NULL;p1=p1-next)if(p1-num=num)printf(,%dt%st%st%ct%dt%st%sn,p1-num,p1-name,p1-tel,p1-sex,p1-age,p1-bir,p1-add); 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 16 页,共 16 页 - - - - - - - - - -

    注意事项

    本文(2022年C语言学生通信录管理系统课程设计报告.pdf)为本站会员(Che****ry)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开