




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、最新资料推荐C 程序学生管理系统/* Note:Your choice is C IDE */#includestdio.h#include stdlib.h#include string.htypedefstructstudent / 定义学生char name10;intnumber;char sex2;intmath;integlish;intclanguge;intaverage; student;typedefstructunit/ 定义接点student date;structunit* next; unit;unit * build()/ 建立链表并返回指针unit* p;if
2、(p =(unit *)malloc(sizeof (unit)=NULL) printf(=初始化失败! );return0;else p- next =NULL;p- date . number=0; / 头结点存放学生人数printf( 初始化成功! n );returnp;void add(unit*head)/ 增加学生1最新资料推荐unit* p, *q;intm,n =0;q=head- next;p=(unit * )malloc( sizeof (unit);printf(=请输入新生姓名! n );gets(p- date . name);fflush(stdin);pri
3、ntf(=请输入学号! n );while (n =0)scanf( %d, &m);fflush(stdin);if(q =NULL) n=1;while (q)if (q - date . number=m)n );printf(=你输入的学号与已有同学的学号相同,请重新输入!q=head- next;break ;elseq=q- next;if(q =NULL) n=1;p- date . number=m;printf(=请输入性别! n );gets(p - date . sex);fflush(stdin);printf(=请输入数学成绩 n );scanf( %d, &m);f
4、flush(stdin);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;2最新资料推荐p- next =q;head- date
5、. number+;void deletion(unit*head) / 删除一名学生unit* p=head- next, * q=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 ;elsep=
6、p- next;q=q- next;if (p =NULL)printf(=你要删除的学生不存在 , 删除失败! n );intdisplay(unit* head)/ 显示学生信息unit* p=head- next;intm,n =0;char N10;if (p =NULL)printf(=系统无学生! n );return0;3最新资料推荐while (n =0)printf(*n);printf(=请选择你的操作! n );printf(=ttt1.显示所有 t2. 按姓名查找 nttt3.按学号查找t4. 返回主菜单 n );scanf( %d, &m);fflush(stdin)
7、;switch (m)case 1:printf(n= 该系统拥有 %d名学生!nn ,head - date . number);p=head- next;nn );printf(t 姓名 t 学号 t 性别 t 数学 t 英语 tc 语言 t 综合while (p)printf( t%st%dt%st%dt%dt%dt%dn ,p - date . name,p- date . numb er,p - date . sex,p - date . math,p- date . eglish,p- date . clanguge,p - date . average); p=p- next;b
8、reak ;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- date . numb er,p - date . sex,p - date . math,p- date . eglish,p- date . clanguge,p - date
9、. average); break ;4最新资料推荐elsep=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 . name,p- date . numb er,p -
10、 date . sex,p - date . math,p- date . eglish,p- date . clanguge,p - date . average); break ;elsep=p- next;if (p =NULL)printf(=你要查的学生不存在! n );break ;case 4:n =1; break ;return1;intrange(unit* head)/ 排序5最新资料推荐unit* p=head, * q=head- next;intn,i,m =head- date . number;printf(*n);printf(ttt1.按学号 t2.按成绩
11、nn );printf(=请选择操作! n );scanf( %d, &n);fflush(stdin);if (q =NULL) printf( =无学生可排序! n ); return 0;switch (n)case 2: for (i =0;i next;while (q - next)if (q - date . average) next - date . average)p- next =q- next;p=p- next;q- next =p- next;p- next =q;elsep=p- next;q =q- next;break ;case 1: for (i =0;i
12、 next;while (q - next)if (q - date . number)(q - next - date . number)p- next =q- next;p=p- next;6最新资料推荐q- next =p- next;p- next =q;elsep=p- next;q =q- next;break ;printf(=排序成功! n );return1;void menu()printf(n*主菜单*n);printf(ttt1.新建系统 t2.添加学生 nttt3.删除学生 t4.查看信息 nttt5.排列顺序 t6.读取信息 nttt7.保存信息 t8.退出系统 n
13、 );printf(=请选择你的操作! n );intsave(unit*head)/ 保存FILE * fp;unit* p;p=head;if (fp =fopen(学生 , wb+ ) =NULL)printf(=保存失败! );return0;while (p) fwrite(&(p - date), sizeof (student),1,fp);p =p- next;printf(=保存成功! );7最新资料推荐fclose(fp);return1;unit * read()/ 读入系统学生信息inti;unit* p, *q, *head;FILE * fp;if (head =(
14、unit*)malloc(sizeof (unit)=NULL) printf( =开辟空间失败! ); exit(1);elsehead- next =NULL;head- date . number=0; / 头结点存放学生人数q=head;if (fp =fopen(学生 , rb ) =NULL) printf( =系统无学生! n ); return 0;fread(&(q - date), sizeof (student),1,fp);for (i =0;i date . number;i +)if (p =(unit *)malloc(sizeof (unit)=NULL) pr
15、intf( =读值失败! ); exit(1);fread(&(p - date), sizeof (student),1,fp);p - next =q- next;q - next =p;fclose(fp);returnhead;void main()intm=0,n, i;unit* head;8最新资料推荐printf(*nn);printf(ttt*欢迎使用学生成绩管理系统* n);printf(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();elseif (i =2)exit(1);elseprintf(=信息导入成功! );while (m=0)menu();scanf( %d, &n);fflush(stdin);switch (n
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 山东圣翰财贸职业学院单招职业技能测试参考试题(附答案)
- 学校饮用水安全
- 机电科月度工作总结
- 英语教研活动总结
- 2025年餐饮连锁加盟合同模板
- 购买车位合同范文
- 茶叶代理合同范本
- 工程机械租赁合同
- 2025企业采购合同协议书模板
- 2025年唐山货运从业资格证考试题目库存答案
- 2023年云南省接受军转干部安置考试试题
- 心理学专业英语基础课件
- 关于在生产过程中物料流转的交接和管理规定
- 尤塞恩博尔特
- 电子技术基础与技能(中职)PPT全套教学课件
- 2022年高考真题及答案解析《历史、地理、政治》(湖北卷)
- 高中数学人教A版空间几何体(省一等奖)
- 集团项目施工管理标准化指导手册
- 中药熏洗法(课堂PPT)
- 二氧化碳灭火器安全操作规程
- “四史”概论知到章节答案智慧树2023年温州医科大学
评论
0/150
提交评论