2022年数据结构课程设计--简易学生成绩管理系统--C语言描述 .pdf
《2022年数据结构课程设计--简易学生成绩管理系统--C语言描述 .pdf》由会员分享,可在线阅读,更多相关《2022年数据结构课程设计--简易学生成绩管理系统--C语言描述 .pdf(16页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、#include stdio.h #include stdlib.h #include string.h #include ctype.h #include malloc.h #define TURE 1 #define FLASE 0 #define OK 1 #define ERROR 0 #define OVERFLOW -1 #define SHUCHU %-10s %-10s %-4d %-4s %-10s %-5d %-8s %-9s %-3d %sn #define BIAOTI 学号姓名年龄 性别科目 1 成绩 1 老师 1 科目 2 成绩 2 老师 2n #define EN
2、 studm.num,studm.name,studm.age,studm.sex,studm.study-subject,studm.study-score,studm.study-teacher,studm.study-next-subject,studm.study-next-score,studm.study-next-teacher typedef int Status; typedef struct Lnode1 char subject20; int score; char teacher20; struct Lnode1 * next; LNode1,* linklist; t
3、ypedef struct Lnode2 char num10; char name20; int age; char sex2; linklist study; LNode2,stud11; struct student char num10; char name20; int age; char sex2; char subject120; int score1; char teacher120; char subject220; int score2; char teacher220; *Student,STUD10; 名师资料总结 - - -精品资料欢迎下载 - - - - - - -
4、 - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 16 页 - - - - - - - - - int print(LNode2 * stud,int m) printf(SHUCHU,EN); int shuoming() /* 输出系统使用说明 */ system(cls); printf(nn nn n -*(*)n联系。n nnnnnnn按任意键推出 ); int tuichu() /* 退出函数 */ system(cls); printf(nnnn *nnn * *nnn * *nn * *nn *nnn 按 任 意 键 退 出
5、 nnn); return(OK); int chaxun1(LNode2 *stud) /* 显示全部学生的信息 */ int i; int j; system(cls); printf(nnn*n); printf(BIAOTI); for(i=1;i=10;i+) print(stud,i); printf(*); printf(nnn*返回上一 级菜 单请 输 入1n*如 需 退 出 本系 统 请 输 入2nnnnn 请在这里选择您所需要的服务(12):); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理
6、- - - - - - - 第 2 页,共 16 页 - - - - - - - - - scanf(%d,&j); system(cls); switch(j) case 1:chaxun(stud);break; case 2:tuichu();break; default :return(chaxun1(stud); int chaxun2(LNode2 * stud) /* 按照学号查找(使用hash 函数) */ char c20; int k,m,j; system(cls); printf(nnnn请在这里输入您要查询的学号:); scanf(%s,c); k=100*(c6-0
7、)+10*(c7-0)+c8-0; k=k%11; for(m=0;m12) printf(nnn没有您要查找的这名同学 n); else printf(nn); printf(*); printf(BIAOTI); print(stud,k); printf(*n); printf(nnn*返回上一 级菜单请输入 1n*如需要继续查找请输入 2n*如需退出本系统请输入 3nnnnn请在这里选择您所需要的服务( 13)); scanf(%d,&j); switch(j) case 1:chaxun(stud);break; case 2:chaxun2(stud);break; case 3:
8、tuichu();break; default :chaxun2(stud); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 16 页 - - - - - - - - - int chaxun3(LNode2 *stud) /* 按姓名查找 */ char c20; int i,j; system(cls); printf(nn请在这里输入输入您要查找的姓名:); scanf(%s,c); for(i=1;i10)printf(nn没有您要查找的这名同学 n); els
9、e printf(nn*); printf(BIAOTI);print(stud,i);printf(*n); printf(nnnn返回上一级菜单请输入1n如 果 要 继 续 查 找 请 输 入2n如 需 退 出 本 系 统 请 输 入3nnnn请选择您需要的服务( 13):); scanf(%d,&j); switch(j) case 1:chaxun(stud);break; case 2:chaxun3(stud);break; case 3:tuichu();break; default :return(chaxun3(stud); return(OK); int chaxun4(L
10、Node2 *stud) /* 按照男 / 女生查找 */ int j,i; char c1; system(cls); printf(nnn请输入您想查找的性别(男生m/女生 f )n); scanf(%s,c); if(c0=m)|(c0=f) printf(*);printf(BIAOTI); if(!strcmp(studi.sex,c) printf(BIAOTI); for(i=1;i=10;i+) if(!strcmp(studi.sex,c) print(stud,i); if(c0=m)|(c0=f) printf(*n); if(!(c0=m)|(c0=f) printf(
11、nn对不起 您的输入有误 ,您可以输入数字 2 以重新查找 nnnn); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 16 页 - - - - - - - - - printf(n返回上一级菜单请输入 1n如 果 要 继 续 查 找 请 输 入2n如 需 退 出 本 系 统 请 输 入3nnnnn 请在这 里选择 您所需 要的服务(13)); scanf(%d,&j); switch(j) case 1:chaxun(stud);break; case 2:chaxu
12、n4(stud);break; case 3:tuichu();break; default : chaxun4(stud); return(OK); int chaxun5(LNode2 *stud) /* 查看某年级的全部信息 */ int i,j; char c1; system(cls); printf(nn 请在这里输入您要查找的年级:); scanf(%s,c); if(1=c0)&(c0=3) for(i=1;isubject,studi.study-next-subject); break; else printf(nnn*对不起 你所要查找的年级不存在 *n); printf
13、(nnn*返回上一级菜单请输入1n*如 果 要 继 续 查 找 请 输 入2n*需 要 退 出 本 系 统 请 输 入3nn 请在这里选择您所需要的服务(13):); scanf(%d,&j); switch(j) case 1:chaxun(stud);break; case 2:chaxun5(stud);break; case 3:tuichu();break; default : chaxun5(stud); return(OK); int chaxun6(LNode2 *stud) /* 听某老师讲授课的全部学生*/ 名师资料总结 - - -精品资料欢迎下载 - - - - - -
14、- - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 16 页 - - - - - - - - - char c20; int i; int j,k; j=0; system(cls); printf(nnn请在这里输入您要查找的老师的姓名:); scanf(%s,c); for(i=1;iteacher,c)|(!strcmp(studi.study-next-teacher,c) j=j+1; if(j=1) printf(nn在修%s老师的课程的学生有 :n,c); printf(%sn,studi.name); if(j=0) pri
15、ntf(nn在本系统所收录的学生中没有人修读%s老师的课程.n,c); printf(n-n*返 回 上 一 级 菜 单 请 输入1n*如 果 要 继 续 查 找 请 输 入2n*需 要 退 出 本 系 统 请 输 入3n-nnnn请 在 这 里 选 择 您 所 需 要的 服 务(13):); scanf(%d,&k); switch(k) case 1:chaxun(stud);break; case 2:chaxun6(stud);break; case 3:tuichu();break; default : chaxun6(stud); return(OK); int chaxun7(L
16、Node2 *stud) /* 修某门课的全部学生 */ char c20; int i; int j,k; j=0; system(cls); printf(nn请在这里输入您要查找的科目:); scanf(%s,c); for(i=1;isubject,c)|(!strcmp(studi.study-next-subject,c) j=j+1; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 16 页 - - - - - - - - - if(j=1) printf(
17、nn在修%s课程的学生有 :n,c); printf(%sn,studi.name); if(j=0) printf(nn在 本 系 统所 收录 的学 生中 没有 人 修 读 %s 课程.n,c); printf(nn-n*返回上一级菜单请输入1n*如 果 要 继 续 查 找 请 输 入2n*需 要 退 出 本 系 统 请 输 入3n-nnnn请在这里选择您所需要的服务:(13)); scanf(%d,&k); switch(k) case 1:chaxun(stud);break; case 2:chaxun7(stud);break; case 3:tuichu();break; defa
18、ult : chaxun7(stud); return(OK); int chaxun(LNode2 *stud) /* 通过本函数可以调用各个查询的函数*/ int i; system(cls); printf(nn * * * 查 询 菜 单 * * *n* * 如果您需要显示全部信息请输入1nn * 如果您需要按照学号查找请输入 2nn * 如果您需要按照姓名查找请输入 3nn * 如果您需要按照性别查找请输入 4nn * 如果查看某年级全部课程请输入 5nn * 查看听某位老师课的学生请输入6nn * 查 看 选 修 某 们 功 课 的 学 生 请 输 入7n*nn-n如退出 本 系统
19、请输入0n 返回上一级菜单输入 8n-nn请在这里选择您所需要的服务( 08):); scanf(%d,&i); switch (i) case 0:tuichu();break; case 1:chaxun1(stud);break; case 2:chaxun2(stud);break; case 3:chaxun3(stud);break; case 4:chaxun4(stud);break; case 5:chaxun5(stud);break; case 6:chaxun6(stud);break; case 7:chaxun7(stud);break; 名师资料总结 - - -精
20、品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 16 页 - - - - - - - - - case 8:zhengti(stud);break; default:chaxun(stud); return(OK); int paixu1(LNode2 * stud) /* 按照学号从小到大排序 */ int i,j,t,k; int a11; j=1; system(cls); printf(n 按照学号从小到大排序的成绩表如下n*); printf(BIAOTI); for(i=1;i=10;
21、i+) ai=i; for(i=1;i=10;i+) for(j=i+1;j0) t=ai;ai=aj;aj=t; for(i=1;i=10;i+) print(stud,ai); printf(*); printf(nn-n*返回上一级菜单请输入1n* 需要退出本系统请输入 2n-n请在这里选择您所需要的服务( 12):); scanf(%d,&k); switch(k) case 1:paixu(stud);break; case 2:tuichu();break; default : paixu(stud); return(OK); int paixu2(LNode2 *stud) /*
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年数据结构课程设计-简易学生成绩管理系统-C语言描述 2022 数据结构 课程设计 简易 学生 成绩管理系统 语言 描述
限制150内