



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、.题目:学生学籍管理系统目录:一 . 个人简介。二 . 报告摘要。三 . 报告目录。四 . 报告正文。1 、系统需求分析2 、系统总体设计3 、系统详细设计六.总结。二 . 报告摘要这个 C语言课程设计是关于学生学籍管理系统的设计, 题目要求能够录入数据, 查询,删除和排序的功能。报告依次以主函数板块、数据录入板块、查询板块、删除板块、排序板块的顺序进行。三 . 报告目录1 主函数2 数据录入3 查询4 删除5 排序四 . 报告正文1 系统需求分析s.根据题目需求,在程序中要求浏览学生的信息,应该提供数据录入、查询、删除、排序的操作。 题目要求实得成绩、 实得学分根据条件自动运算, 应该提供求
2、综合成绩和实得学分的算法,另外还应该提供键盘式选择菜单实现功能选择。2 系统总体设计学生学籍管理系统数据录入数据查询删除数据数据排序3 系统详细设计( 1)主函数负责提供输入、处理和输出部分的函数调用,其中各功能模块用菜单方式选择。程序:void menu()int n,w;doputs("tt*MENU*nn");puts("tttt1.enter new data-student");puts("tttt2.search by name");puts("tttt3.search by learn number"
3、);puts("tttt4.delete data");puts("tttt5.insert data");puts("tttt6.enter new data-sorce");puts("tttt6.exit");puts("nntt*n");printf("choice your number(1-9):bb");scanf("%d",&n);if(n<1|n>9)w1=1;getchar();s.else w1=0;while(w
4、1=1);switch(n)case 1:enter();breakcase 2:search by name();break;case 3:search by learn number();break;case 4:del();break;case 5:insert():break;case 6:exit(0);break;main()menu();( 2)数据录入板块数据信息中学号、姓名等是字符型,采用字符型数组,分数、 、等为整数,可以采用整型数组,实得学分可能为小数,采用实型。采用结构体数组存放学生数据信息到文件。程序:/*/#define N 10struct studentint
5、num;char name20;char sex;char tel20;char domi3;stuN;viod enter new data-student()int i,n;printf("hou many students(0-%d)?:",n-1);for(n=1;n<10;n+)printf("n enter data nownn");s.for(i=0;i<n;i+)printf("n input%dth student record.n",i+1);input(i);if(i!=0) save(n);prin
6、tf_back();#define N 10struct courseint num;int course_num;char coursename;int normalsorce平时成绩实验成绩考试成绩综合成绩实得学分couNvoid enter new data-sorce()int i,n,z,c;float s;printf("how many num(0-%d)?: "N-1);for(n=1;n<10;n+)printf(n enter data nownn");for(i=0;i<n;i+)print("n input%dth r
7、ecord.n",i+1);input(i);if(i!=0) save(n);printf_back();s.if(cou1.lab=-1) cou1.true=cou1.normal*0.3+cou1.text*0.7; else cou1.true=cou1.lab*0.15+cou1.normal*0.15+cou1.text*0.7;if(c=100) s=cou1.normalsorce*1;else c=cou1.text/10;switch(c)case 10:case 9:s=cou1.normalsorce*0.9;break;case 8:s=cou1.norm
8、alsorce*0.8;break;case 7:s=cou1.normalsorce*0.75;break;case 6:s=cou1.normalsorce*0.6;break;case 5:case 4:case 3:case 2:case 1:case 0:s=0;break;default:printf("errorn"); coui.act=s;( 3) 数据查询这个模块要求a. 输入一个学号或姓名查讯学生的基本信息并显示输出;输入一个宿舍号码,可查出本室所有学生的基本信息并显示输出; c. 输入一个学号时,查出此学生所有课程情况。程序:/*/Search()i
9、nt i,n,k;Struct student s;Struct course c;n=load();dodo k=-1;s.printf("nnenter name that you want to search!name:");scanf("%s",);printf _face();do n=-1;Printf("nnenter domi that you want to search!domi:")scanf("%d",s.domi);printf_ face();do i=-1;printf(&
10、quot;nnenter num that you want to search!num ");scanf("%d%c%d%f",c.num,c.coursename,c.ture,c.act);printf_face();( 4)删除数据题目要求在删除A.TXT 中一个学生信息时,B.TXT 中相应的信息也要被删除。程序:/*/void del()struct student ssturct course c;FILE*fp;int i,n,k w0=1,w1,w2=0;n=load();dok=-1;printf_face();for(i=0,i<n;i
11、+)if(i!=0)&&(i%10=0)printf("nnrememberno. which needed delete.Passany key to contiune.");getch()puts("nn");s.printf_one(i);doprintf("nnenter no. That you want to delete!no.");scanf("%s",s.num);for(i=0;i<n;i+)if(strcmp(s.num,stui.mum=0)k=i;s=stui;for
12、(i=0,i<n,i+)if(strcmp(coui=stui)if(k=-1)printf("nnno exist!Please again");while(k=-1);printf_face();printf_one(k);w1=delete_data(k,n);if(w1=1)Printf("nsuccessful !nnare you delete another ?nnt1 )yes 2)back with savetbb");scanf("%d",&w0);w2=1;elsew0=0;if(w2=1)stuk
13、=sif(w0!=1&&w2=1)save(n);while(w0=1);menu()s.( 5)数据排序能实现选择按综合成绩或实得学分升序或降序排序并显示数据。程序:/*/void order()int i,j,k;int m,n,p;struct course s;struct course c;for(i=0;i<9;i+)k=i;for(j=i+1;j<10;j+) if(couj.true>couk.true) k=j;s=coui.true;coui.true=couj.true;couj.true=s;for(m=0;m<9;m+)p=mf
14、or(n=m+1;n<10;n+) if(cou.actn>cou.Actp)p=n;c= cou.actm;cou.actm=cou.atcn;cou.actn=c;(6)公共函数/*voidprintf_face1()/ 每次要输出文件1 数据的时候用到(打印到数据的第一排,提示作用) printf("n学号性别 宿舍号码电话号码 n");/*void printf_face() /每次要输出文件2 数据的时候用到(打印到数据的第一排,提示作用) printf("n学号 课程编号课程名称学分平时成绩实验成绩卷面成绩综合成绩实得分数 n")
15、;s./*void printf_back() /返回函数 int w;printf("nnt数据输入成功 _nn");printf("选择需要实现的功能nnt1).浏览输入的数据t2).返回主菜单 : bb");scanf("%d",&w);if(w=1) browse();else menu();/*int save(int n) /保存输入的数据到txt文档FILE *fp;int i;if(fp=fopen("Pro.txt","wb")=NULL)printf("nC
16、annot open filen");return NULL; for(i=0;i<n;i+)if(coursei.num!=0)if(fwrite(&coursei,sizeof(struct course),1,fp)!=1) printf("file write errorn");fclose(fp); return 0;/*void no_input(int i,int n) /检查输入数据是否存在以及编号是否正确 j,k,w1;dow1=0;for(j=0;coursei.numj!='0'j+) /判断输入编号格式是否正确if(coursei.numj>
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 母婴用品专业代购服务合作协议
- 遗产纠纷调节协议书
- 装修公司结算协议书
- 银行承兑抽屉协议书
- 酒店经营合伙协议书
- 首饰工厂订购协议书
- 乡村党建宣传栏协议书
- 餐厅设备租售协议书
- 跳舞团队免责协议书
- 解除劳务协议协议书
- 转让店铺轮胎协议书
- 2025年辽宁省盘锦市中考数学二模试卷
- 完整版新修订《厉行节约反对浪费条例》(课件)
- (区县版)-中小学教辅材料征订专项整治工作方案
- 文员岗位笔试试题及答案
- 2025年制冷工职业技能竞赛参考试题库(共500题含答案)
- 2024年河北承德辰飞供电服务有限公司招聘真题
- 小米集团2024年环境、社会及管治报告(ESG)
- 手机媒体概论(自考14237)复习题库(含真题、典型题)
- 晶圆缺陷检测算法-全面剖析
- 江苏省苏、锡、常、镇2025年高考物理三模试卷含解析
评论
0/150
提交评论