学生成绩管理系统代码c语言编写21767.pdf

上传人:得****3 文档编号:83527713 上传时间:2023-03-31 格式:PDF 页数:17 大小:386.54KB
返回 下载 相关 举报
学生成绩管理系统代码c语言编写21767.pdf_第1页
第1页 / 共17页
学生成绩管理系统代码c语言编写21767.pdf_第2页
第2页 / 共17页
点击查看更多>>
资源描述

《学生成绩管理系统代码c语言编写21767.pdf》由会员分享,可在线阅读,更多相关《学生成绩管理系统代码c语言编写21767.pdf(17页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、 学生成绩管理系统代码c 语言编写 文件编码(GHTU-UITID-GGBKT-POIU-WUUI-8968)C 程序 学生管理系统/*Note:Your choice is C IDE*/#include stdio.h#includestdlib.h#includestring.h typedef struct student/定义学生 char name10;int number;char sex2;int math;int eglish;int clanguge;int average;student;typedef struct unit/定义接点 student date;stru

2、ct unit*next;unit;unit*build()/建立链表并返回指针 unit*p;if(p=(unit*)malloc(sizeof(unit)=NULL)printf(=初始化失败!);return 0;else p-next=NULL;p-date.number=0;/头结点存放学生人数 printf(初始化成功!n);return p;void add(unit*head)/增加学生 unit*p,*q;int m,n=0;q=head-next;p=(unit*)malloc(sizeof(unit);printf(=请输入新生姓名!n);gets(p-date.name

3、);fflush(stdin);printf(=请输入学号!n);while(n=0)scanf(%d,&m);fflush(stdin);if(q=NULL)n=1;while(q)if(q-date.number=m)printf(=你输入的学号与已有同学的学号相同,请重新输入!n);q=head-next;break;else q=q-next;if(q=NULL)n=1;p-date.number=m;printf(=请输入性别!n);gets(p-date.sex);fflush(stdin);printf(=请输入数学成绩n);scanf(%d,&m);fflush(stdin);

4、p-date.math=m;printf(=请输入英语成绩n);scanf(%d,&m);fflush(stdin);p-date.eglish=m;printf(=请输入c语言成绩n);scanf(%d,&m);fflush(stdin);p-date.clanguge=m;p-date.average=(p-date.math+p-date.eglish+p-date.clanguge);q=head-next;head-next=p;p-next=q;head-date.number+;void deletion(unit*head)/删除一名学生 unit*p=head-next,*q

5、=head;char N10;printf(=请输入你想删除的学生姓名!n);gets(N);fflush(stdin);if(p=NULL)printf(=系统无学生可删除!n);while(p)if(strcmp(p-date.name,N)=0)q-next=p-next;head-date.number-;printf(=删除%s成功!n,p-date.name);free(p);break;else p=p-next;q=q-next;if(p=NULL)printf(=你要删除的学生不存在,删除失败!n);int display(unit*head)/显示学生信息 unit*p=h

6、ead-next;int m,n=0;char N10;if(p=NULL)printf(=系统无学生!n);return 0;while(n=0)printf(*n);printf(=请选择你的操作!n);printf(=ttt1.显示所有t2.按姓名查找nttt3.按学号查找t4.返回主菜单n);scanf(%d,&m);fflush(stdin);switch(m)case 1:printf(n=该系统拥有%d名学生!nn,head-date.number);p=head-next;printf(t姓名t学号t性别t数学t英语tc语言t综合nn);while(p)printf(t%st%

7、dt%st%dt%dt%dt%dn,p-date.name,p-date.number,p-date.sex,p-date.math,p-date.eglish,p-date.clanguge,p-date.average);p=p-next;break;case 2:printf(=请输入查找姓名!n);gets(N);fflush(stdin);p=head-next;while(p)if(strcmp(p-date.name,N)=0)printf(t姓名t学号t性别t数学t英语tc语言t综合n);printf(t%st%dt%st%dt%dt%dt%dn,p-date.name,p-d

8、ate.number,p-date.sex,p-date.math,p-date.eglish,p-date.clanguge,p-date.average);break;else p=p-next;if(p=NULL)printf(=你要查的学生不存在!);break;case 3:printf(=请输入查找学号!n);scanf(%d,&m);fflush(stdin);p=head-next;while(p)if(p-date.number=m)printf(t姓名t学号t性别t数学t英语tc语言t综合n);printf(t%st%dt%st%dt%dt%dt%dn,p-date.nam

9、e,p-date.number,p-date.sex,p-date.math,p-date.eglish,p-date.clanguge,p-date.average);break;else p=p-next;if(p=NULL)printf(=你要查的学生不存在!n);break;case 4:n=1;break;return 1;int range(unit*head)/排序 unit*p=head,*q=head-next;int n,i,m=head-date.number;printf(*n);printf(ttt1.按学号t2.按成绩nn);printf(=请选择操作!n);sca

10、nf(%d,&n);fflush(stdin);if(q=NULL)printf(=无学生可排序!n);return 0;switch(n)case 2:for(i=0;inext;while(q-next)if(q-date.average)next-date.average)p-next=q-next;p=p-next;q-next=p-next;p-next=q;else p=p-next;q=q-next;break;case 1:for(i=0;inext;while(q-next)if(q-date.number)(q-next-date.number)p-next=q-next;

11、p=p-next;q-next=p-next;p-next=q;else p=p-next;q=q-next;break;printf(=排序成功!n);return 1;void menu()printf(n*主菜单*n);printf(ttt1.新建系统t2.添加学生nttt3.删除学生t4.查看信息nttt5.排列顺序t6.读取信息nttt7.保存信息t8.退出系统n);printf(=请选择你的操作!n);int save(unit*head)/保存 FILE*fp;unit*p;p=head;if(fp=fopen(d:学生,wb+)=NULL)printf(=保存失败!);retu

12、rn 0;while(p)fwrite(&(p-date),sizeof(student),1,fp);p=p-next;printf(=保存成功!);fclose(fp);return 1;unit*read()/读入系统学生信息 int i;unit*p,*q,*head;FILE*fp;if(head=(unit*)malloc(sizeof(unit)=NULL)printf(=开辟空间失败!);exit(1);else head-next=NULL;head-date.number=0;/头结点存放学生人数 q=head;if(fp=fopen(d:学生,rb)=NULL)print

13、f(=系统无学生!n);return 0;fread(&(q-date),sizeof(student),1,fp);for(i=0;idate.number;i+)if(p=(unit*)malloc(sizeof(unit)=NULL)printf(=读值失败!);exit(1);fread(&(p-date),sizeof(student),1,fp);p-next=q-next;q-next=p;fclose(fp);return head;void main()int m=0,n,i;unit*head;printf(*nn);printf(ttt*欢迎使用学生成绩管理系统*n);p

14、rintf(ntttttttt编译员:岳英明nn);printf(=正在读取系统信息.n);if(head=read()=0)printf(=是否新建?n);printf(ttt是(1)tt否(2)n);scanf(%d,&i);fflush(stdin);if(i=1)head=build();else if(i=2)exit(1);else printf(=信息导入成功!);while(m=0)menu();scanf(%d,&n);fflush(stdin);switch(n)case 1:head=build();break;case 2:add(head);break;case 3:deletion(head);break;case 4:display(head);break;case 5:range(head);break;case 6:head=read();if(head!=0)printf(=读取存盘成功!n);break;case 7:save(head);break;case 8:m=1;break;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 工作报告

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

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