




已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
商洛学院C语言课程设计报告题目:学生信息管理系统院系名称:计算机科学系专业名称:信息管理与信息系统指导老师:赵国强小组成员:张少勃,张煌,李荣贵,杨鹏坤,李桥一. 设计目的1. 通过本次试验,能更好的对链表结构体、部分的相关知识有一个系统的复习和提高。2. 从实验中找出自己在对整体程序设计上的缺陷,并在以后加以改进。二. 设计内容 编写学生信息管理系统,包含数据的插入、显示、修改、删除、查找,文件的读写。三概要设计1功能模块图(1)用户进入模块(2) 主菜单(3) 插入模块当用户输入选择使用的功能为 1时,进入插入功能显示如下界面:在输入完成后按enter键显示如下:输入y则继续输入,输入n则返回主菜单。(4) 查询模块当用户输入选择使用的功能为 2时,进入查询功能显示如下界面:输入学号 1则显示:按enter 返回主菜单。(5)显示模块当用户输入选择使用的功能为 3时,进入显示所有信息功能显示如下界面:按enter 键返回主菜单。(6) 删除模块当用户输入选择使用的功能为 4时,进入删除功能显示如下界面:输入要删除的学号信息,按enter 键,系统就会进行删除信息,删除成功后显示如下:按enter键返回主菜单。(7) 修改模块当用户输入选择使用的功能为 5时,进入修改功能显示如下界面:修改完成后输入n返回主菜单,按y继续修改。(8)退出若要退出,在主菜单界面输入 6 则会退出本系统。2各个模块详细的功能描述。(1) 用户进入界面:每次都进入必须输入密码才能进入主菜单。(2) 主菜单:通过数据的录入(或打开存储的文件)实现信息的修改、插入、删除、查找,然后打印输出。四详细设计主函数1功能函数的调用关系图用户登录主菜单显示信息修改信息插入信息查询信息删除信息通过学号删除通过学号修改通过学号查询2重点设计及编码1.密码输入:相关代码:void first() int i;doprintf(*学生信息管理系统中*n); printf(*系统初始化*n); printf(初始密码:);scanf(%d,&i); fflush(stdin); system(cls);while(i!=123);2.插入信息:相关代码:void insert(int count,struct stu st) char b; printf(ttt学生信息添加n); for(;b!=n;) if(n=30) printf(满员无法添加); break;system(cls); printf(nttt请输入学号:); scanf(%d,&stn.num); printf(nttt请输入姓名:); scanf(%s,); printf(nttt请输入性别:); scanf(%s,stn.sex); printf(nttt请输入家庭住址:); scanf(%s,stn.add); n+; printf(ttt是否继续yn:);fflush(stdin); scanf(%c,&b);system(cls); fflush(stdin); while(b!=y) if(b=n)break; if(b!=y)printf(ntttyn); scanf(%c,&b); fflush(stdin); ; fflush(stdin); printf(ttt返回功能菜单);3.查询信息相关代码:void quer(struct stu st)int m=1; int t; int x; x=0; printf(tttt请输入要查询的学号:); scanf(%d,&t); system(cls); for(x=0;x=30;x+) if(stx.num=t) head(); printf(%dt%st%st%sn,stx.num,,stx.sex,stx.add);m=0;if(m=1)printf(tt无查询信息); fflush(stdin); 4.显示信息在主菜单上输入3时进入,则显示所有插入的信息。相关代码:void disp(int count,struct stu st) int j=0; system(cls); head(); for(;jn;j+)printf(%dt%st%st%sn,stj.num,,stj.sex,stj.add); 5.删除信息相关代码:void del(struct stu st) int m=1; int t; int x; int x1; x=0; printf(ttt请输入要删除的学生的学号:); scanf(%d,&t); for(x=0;x=n&m;x+) if(stx.num=t) for(x1=x;x1=n;x1+) stx1=stx1+1;m=0; printf(已删除该信息n); n-; if(m=1)printf(无需要删除的信息n); fflush(stdin); 6.修改信息。相关代码:void del(struct stu st) int m=1; int t; int x; int x1; x=0; printf(ttt请输入要删除的学生的学号:); scanf(%d,&t); for(x=0;x=n&m;x+) if(stx.num=t) for(x1=x;x1=n;x1+) stx1=stx1+1;m=0; printf(已删除该信息n); n-; if(m=1)printf(无需要删除的信息n); fflush(stdin); 五测试数据及运行结果(1) 插入信息(打开文件)进入插入界面输入图上内容。按n选择退出。(2)查找信息在选择菜单上输入2 弹出让用户输入要查找的学号信息。在输入后按enter 键会出现如下界面:(3)显示信息在选择菜单上输入3 按回车键会显示系统存储的所有的信息。(4) 删除信息在主菜单上输入4后会有提示让用户输入要删除的学号信息,输入后则会删除该学号的相关所有信息。检查时进入 查看信息 功能,进入后则没有显示该学号的相关信息。(5) 修改信息修改后进入 查看信息 功能 ,打印出的数据中没有修改前的信息。六调试情况,设计技巧及体会 好的方面,界面之间的转换,尽量减少了系统的缺陷,提示语句人性化,便于使用函数的调用及返回值,系统设置密码可以保护用户的信息不外泄。 但是,程序可读性不太高,注释说明语句太少,程序做出来是给别人使用的,以后的学习中应该注意。七附录 (电子版源代码)#include stdio.h#include string.h#include stdlib.h#include windows.hvoid enter();int readdata();void stra();int save();void disp(int,struct stu st);void quer(struct stu st);void insert(int ,struct stu st);void del(struct stu st);void modfix(struct stu st);void head();void restra();saveflag=0;struct stu int num; char name30; char sex4; char add40;int n=0;struct stu st30,*p=st;FILE *fp;int main()enter();readdata();stra();save();fclose(fp);return 0; void enter() int i;doprintf(*学生信息管理系统中*n); printf(*系统初始化*n); printf(初始密码:);scanf(%d,&i); fflush(stdin); system(cls);while(i!=123);int readdata()FILE *fp;if(fp=fopen(stdata.txt,r)=NULL)printf(数据文件无法打开,请检查数据文件。n);return 0;while(!feof(fp)fscanf(fp,%dt%st%st%sn,&stn.num,,stn.sex,stn.add);n+;fclose(fp); return 1;int save() /保存数据 int q;if(fp=fopen(stdata.txt,w)=NULL) printf(ttt文件无法打开n); return 0;for(q=0;qn;q+) fprintf(fp,%dt%st%st%sn,stq.num,,stq.sex,stq.add); fclose(fp); return 1;void stra() int i;char c;do for(i=0;i5;i+)printf(n); printf(n); restra(); printf(*n); restra(); printf(* 欢迎使用学生信息查询系统 *n); restra(); printf(* _*n); restra(); printf(* 1.插入信息 2. 查询信息 *n); restra(); printf(* 3.显示信息 4. 删除信息 *n); restra(); printf(* 5.修改信息 6. 退出系统 *n); restra(); printf(* *n); restra(); printf(*n); restra(); printf(选择使用的功能); scanf(%c,&c); fflush(stdin); switch(c) case 1:restra();printf(功能1n); insert(n,p); save(p); getchar();break; case 2:restra();printf(功能2n); quer(p); getchar();break; case 3:restra();printf(功能3n); disp(n,p); getchar();break; case 4:restra();printf(功能4n); del(p); save(); getchar();break; case 5:restra();printf(功能5n); modfix(p); save(); getchar();break; case 6:printf(n);restra();printf(您选择了退出本系统!n谢谢使用您的使用!); break; system(cls); while(c!=6);if(c=6) int k;printf(n); restra(); if(saveflag=1) fflush(stdin); printf(学生数据已经改动,是否保存【y/n】:); k=getchar(); fflush(stdin); if(k=y) save(st); printf(ntt数据保存成功!谢谢使用本系统!); void restra() int i;for(i=0;i=1;i+)printf(t);void disp(int count,struct stu st) int j=0; system(cls); head(); for(;jn;j+)printf(%dt%st%st%sn,stj.num,,stj.sex,stj.add); void quer(struct stu st)int m=1; int t; int x; x=0; printf(tttt请输入要查询的学号:); scanf(%d,&t); system(cls); for(x=0;x=30;x+) if(stx.num=t) head(); printf(%dt%st%st%sn,stx.num,,stx.sex,stx.add);m=0;if(m=1)printf(tt无查询信息); fflush(stdin); void insert(int count,struct stu st) char b; printf(ttt学生信息添加n); for(;b!=n;) if(n=30) printf(满员无法添加); break;system(cls); printf(nttt请输入学号:); scanf(%d,&stn.num); printf(nttt请输入姓名:); scanf(%s,); printf(nttt请输入性别:); scanf(%s,stn.sex); printf(nttt请输入家庭住址:); scanf(%s,stn.add); n+;saveflag=1; printf(ttt是否继续yn:);fflush(stdin); scanf(%c,&b);system(cls); fflush(stdin); while(b!=y) if(b=n)break; if(b!=y)printf(ntttyn); scanf(%c,&b); fflush(stdin); ; fflush(stdin); printf(ttt返回功能菜单);void del(struct stu st) int m=1; int t;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年分布式能源在新能源政策法规中的影响
- 2025年新能源汽车自动驾驶技术对保险行业的影响报告
- 2025标准物流服务合同
- 2025年新能源项目客户服务流程优化案例报告
- 新能源行业人才竞争格局与新能源行业人才流动规律研究报告
- 山楂的药效与作用
- 雌激素升高的表现
- 离婚后房产分割及财产分配与子女抚养执行合同范本
- 离婚协议子女抚养费支付及父母共同责任约定
- 2025深度探讨施工企业合同管理与风险控制
- 2025年新护士招聘三基考试题库及答案
- 2024年绍兴杭绍临空示范区开发集团有限公司招聘真题
- 2025资产抵押合同(详细)
- 小额农业贷款技术服务合作协议
- 辅警摄影基础知识培训课件
- 2025年押运员模拟考试试题及答案
- 沉井施工合同4篇
- 农业机械安全知识课件
- 轴承质检员培训课件文档
- 2025至2030有机聚合物钽电容器行业发展趋势分析与未来投资战略咨询研究报告
- 2025沈阳各区县(市)工会公开招聘工会社会工作者数量考试参考试题及答案解析
评论
0/150
提交评论