下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、商洛学院C语言课程设计报告题目:学生信息管理系统院系名称:计算机科学系专业名称:信息管理与信息系统指导老师:赵国强小组成员:张少勃,张煌,李荣贵,杨鹏坤,李桥一. 设计目的1. 通过本次试验,能更好的对链表结构体、部分的相关知识有一个系统的复习和提高。2. 从实验中找出自己在对整体程序设计上的缺陷,并在以后加以改进。二. 设计内容 编写学生信息管理系统,包含数据的插入、显示、修改、删除、查找,文件的读写。三概要设计1功能模块图(1)用户进入模块(2) 主菜单(3) 插入模块当用户输入选择使用的功能为 1时,进入插入功能显示如下界面:在输入完成后按enter键显示如下:输入y则继续输入,输入n则
2、返回主菜单。(4) 查询模块当用户输入选择使用的功能为 2时,进入查询功能显示如下界面:输入学号 1则显示:按enter 返回主菜单。(5)显示模块当用户输入选择使用的功能为 3时,进入显示所有信息功能显示如下界面:按enter 键返回主菜单。(6) 删除模块当用户输入选择使用的功能为 4时,进入删除功能显示如下界面:输入要删除的学号信息,按enter 键,系统就会进行删除信息,删除成功后显示如下:按enter键返回主菜单。(7) 修改模块当用户输入选择使用的功能为 5时,进入修改功能显示如下界面:修改完成后输入n返回主菜单,按y继续修改。(8)退出若要退出,在主菜单界面输入 6 则会退出本系
3、统。2各个模块详细的功能描述。(1) 用户进入界面:每次都进入必须输入密码才能进入主菜单。(2) 主菜单:通过数据的录入(或打开存储的文件)实现信息的修改、插入、删除、查找,然后打印输出。四详细设计主函数1功能函数的调用关系图用户登录主菜单显示信息修改信息插入信息查询信息删除信息通过学号删除通过学号修改通过学号查询2重点设计及编码1.密码输入:相关代码:void first() int i;doprintf(*学生信息管理系统中*n); printf(*系统初始化*n); printf(初始密码:);scanf(%d,&i); fflush(stdin); system(cls);while(
4、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);
5、 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); syste
6、m(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,s
7、tj.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
8、; 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)显示信息在选择菜
9、单上输入3 按回车键会显示系统存储的所有的信息。(4) 删除信息在主菜单上输入4后会有提示让用户输入要删除的学号信息,输入后则会删除该学号的相关所有信息。检查时进入 查看信息 功能,进入后则没有显示该学号的相关信息。(5) 修改信息修改后进入 查看信息 功能 ,打印出的数据中没有修改前的信息。六调试情况,设计技巧及体会 好的方面,界面之间的转换,尽量减少了系统的缺陷,提示语句人性化,便于使用函数的调用及返回值,系统设置密码可以保护用户的信息不外泄。 但是,程序可读性不太高,注释说明语句太少,程序做出来是给别人使用的,以后的学习中应该注意。七附录 (电子版源代码)#include stdio.h
10、#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; cha
11、r 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(
12、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,
13、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); rest
14、ra(); 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:re
15、stra();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】:)
16、; 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
17、=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;s
18、ystem(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; int x; int x1;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 混凝土工地环保措施方案
- 2026广东云浮市新兴县招募见习岗位人员2人备考题库含答案详解(预热题)
- 建筑项目成本控制方案
- 2026广西桂林信息工程职业学院人才招聘备考题库附答案详解(研优卷)
- 2026中国平安保险(集团)股份有限公司四川分公司招聘备考题库【夺冠】附答案详解
- 2026青海天蓝新能源材料有限公司招聘2人备考题库(综合题)附答案详解
- 2026清明上河园招聘备考题库带答案详解(基础题)
- 2026广东佛山南海区大沥镇盐步第三幼儿园招聘备考题库及答案详解(有一套)
- 2026北京航空航天大学宇航学院第一批卓越百人博士后岗位招聘备考题库及答案详解【网校专用】
- 2026广东深圳市龙岗区坂田街道上品雅园幼儿园招聘1人备考题库附答案详解(考试直接用)
- 山东省2026年春季高考技能测试电子商务类专业模拟试题及答案解析
- 2026年高校统战部招聘考试笔试试题(含答案)
- 2026新疆兵团第 三师法院系统聘用制书记员招聘(8人)考试参考试题及答案解析
- 2025年病历书写规范培训试题(附答案)
- 2026年春季三年级道德与法治下册全册期末考试知识点材料
- 2026贵州省事业单位联考招录易考易错模拟试题(共500题)试卷后附参考答案
- 2025国考公安机关面向公安院校公安专业毕业生招录人民警察专业科目笔试考试大纲考试备考题库附答案
- 南昌市新力禧园2#住宅楼施工组织设计施工组织设计
- 绿电直连政策及新能源就近消纳项目电价机制分析
- 2026年及未来5年中国婚宴酒席行业市场全景分析及发展趋势预测报告
- 2026年贵州高考化学真题解析含答案
评论
0/150
提交评论