C语言实现学生信息管理系统(文件版)
#include
#include
#include
#include
#define USER "TOM" // 事先定义用户名,用于登录页面,验证身份。
#define PW "123456789" // 事先定义密码 ,作用同上。
void Level_menu();//主菜单的声明--选择学生端还是老师端。
void Level_2_menu(); //二级菜单——具体功能分化
void Student_add_Level_3_menu();// 增添学生信息菜单功能分化
void Student_Insert(); //添加单个学生信息
void Student_Insert1(); /*为上面批量输入设置的函数,其代码与上面的
单个输入相似,删减了一部分*/
void Student_Tongji_menu();//统计菜单部分
void Student_Tongji_menu2();//统计二级菜单
void Student_Tongji_menu3();//统计
void IO_ReadInfo();/*将学生信息从文件(student database.txt)中读出*/
void IO_WriteInfo();/*将学生信息写入文件(Database.txt)*/
void student_Delete_menu(); /*删除学生信息菜单*/
void student_menu1();/*学生查询课程信息菜单*/
void student_Kecheng_menu2();
void Student_From_high_to_low1(); /*按综合测评从高到低排序*/
void jiangxue_menu();/*奖学金评定办法*/
void Student_Display2();/*显示学生信息2在奖学金评定时使用*/
/*定义学生结构体*/
struct Student
{
char ID[20]; //学号
char Name[20]; //姓名
char sushe[6]; //宿舍房间号
float mathA1; //高等数学成绩
float EnglishA1; //大学英语成绩
float software; //软件技术导论
float china_history;//中国近代史纲要
float junshi; //军事教育
float xinli; //心理健康辅导
float sports; //体育*/
float C_Mark; //C语言程学设计成绩
float pingjun; //总学分
float Banzhuren; //班主任评分
float Cepingfen; //测评分
};
/*声明学生数组及学生数量*/
struct Student students[1000];
int num=0;
int Num;
/*通过学号返回数组下标*/
int Student_SearchByIndex(char id[])
{
int i;
for (i=0;i { if (strcmp(students[i].ID,id)==0) { return i; } } return -1; } /*通过姓名返回数组下标*/ int Student_SearchByName(char name[]) { int i; for (i=0;i { if (strcmp(students[i].Name,name)==0) { return i; } } return -1; } /*通过宿舍成员返回数组下标*/ void Student_SearchBySushe() { system("cls"); system("color f0"); int i; char Sushe[6] ; printf("请输入你想要查询的宿舍房间号: "); scanf("%s",&Sushe); printf("%10s%10s%8s%8s%8s%8s%8s%8s%8s%8s%8s%8s%8s%8s ","学号","姓名","宿舍号","高等数学","大学英语","软件技术导论","中国近代史","军事教育","心理健康教育","大学体育","C语言成绩","总学分","班主任评分","测评分"); printf("------------------------------------------------------------------------------------------------------------------------ "); for (i=0;i { if (strcmp(students[i].sushe,Sushe)==0) { printf("%10s%10s%5s %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f ",students[i].ID,students[i].Name,students[i].sushe,students[i].mathA1,students[i].EnglishA1,students[i].software,students[i].china_history,students[i].junshi,students[i].xinli,students[i].sports,students[i].C_Mark,students[i].pingjun,students[i].Banzhuren,students[i].Cepingfen); } } printf("数据加载完毕!"); Student_Tongji_menu2(); } /*显示单条学生记录*/ void Student_DisplaySingle(int index) { printf("%10s%10s%8s%8s%8s%8s%8s%8s%8s%8s%8s%8s ","学号","姓名","宿舍号","高等数学","大学英语","软件技术导论","中国近代史","军事教育","心理健康教育","大学体育","C语言成绩","品行分"); printf("------------------------------------------------------------------------------------------------------------------------ "); printf("%10s%10s%5s %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f ",students[index].ID,students[index].Name,students[index].sushe,students[index].mathA1,students[index].EnglishA1,students[index].software,students[index].china_history,students[index].junshi,students[index].xinli,students[index].sports,students[index].C_Mark,students[index].pingjun); } /*增加单条学生记录*/ void Student_Insert() { system("cls"); system("color f0"); float a1,a2,a3,a4,a5,a6,a7,a8; float j=0; while(1) { printf("请输入学号:"); scanf("%s",&students[num].ID); getchar(); printf("请输入姓名:"); scanf("%s",&students[num].Name); getchar(); printf("请输入宿舍号:"); scanf("%s",&students[num].sushe); getchar(); printf("请输入高等数学成绩:"); scanf("%f",&students[num].mathA1); getchar(); if (59 a8= 1.5; else a8=0; printf("请输入大学英语成绩:"); scanf("%f",&students[num].EnglishA1); getchar(); if (59 a1= 2; else a1=0; printf("请输入软件技术导论成绩:"); scanf("%f",&students[num].software); getchar(); if (59 a2= 1.5; else a2=0; printf("请输入中国近代史纲要成绩:"); scanf("%f",&students[num].china_history); getchar(); if (59 a3= 2.5; else a3=0; printf("请输入军事教育:"); scanf("%f",&students[num].junshi); getchar(); if (59 a4= 2; else { a4=0; } printf("请输入心理健康教育成绩:"); scanf("%f",&students[num].xinli); getchar(); if (59 a5= 1.5; else a5=0; printf("请输入体育成绩:"); scanf("%f",&students[num].sports); getchar(); if (59 a6= 2; else a6=0; printf("请输入C语言成绩:"); scanf("%f",&students[num].C_Mark); getchar(); if (59 a7= 3.5; else a7=0; printf("请输入班主任评分:"); scanf("%f",&students[num].Banzhuren); getchar(); students[num].pingjun=a1+a2+a3+a4+a5+a6+a7+a8; //总学分 j=(students[num].pingjun*0.4)+(students[num].Banzhuren*0.6); students[num].Cepingfen=j; num++; printf("是否继续?(Y/N),继续请按任意键,否则输入N:"); if (getchar()=='N') { Num=num; break; } } } /*批量添加学生记录*/ void Student_many1() { { system("cls"); system("color f0"); int i,j; printf("请输入你将要添加的人员数: "); scanf("%d",&j); for(i=0;i { Student_Insert1(); } printf("成员添加完毕,是否跳转至上一级菜单? "); printf("是?,请按任意键,确认输入: "); if (getchar()=='Y') { Student_add_Level_3_menu(); } } } /*为上面批量输入设置的函数,其代码与上面的 单个输入相似,删减了一部分*/ void Student_Insert1() { { printf("请输入学号:"); scanf("%s",&students[num].ID); getchar(); printf("请输入姓名:"); scanf("%s",&students[num].Name); getchar(); printf("请输入宿舍号:"); scanf("%s",&students[num].sushe); getchar(); printf("请输入高等数学成绩:"); scanf("%f",&students[num].mathA1); getchar(); printf("请输入大学英语成绩:"); scanf("%f",&students[num].EnglishA1); getchar(); printf("请输入软件技术导论成绩:"); scanf("%f",&students[num].software); getchar(); printf("请输入中国近代史纲要成绩:"); scanf("%f",&students[num].china_history); getchar(); printf("请输入军事教育:"); scanf("%f",&students[num].junshi); getchar(); printf("请输入心理健康教育成绩:"); scanf("%f",&students[num].xinli); getchar(); printf("请输入体育成绩:"); scanf("%f",&students[num].sports); getchar(); printf("请输入C语言成绩:"); scanf("%f",&students[num].C_Mark); getchar(); printf("请输入班主任评分:"); scanf("%f",&students[num].Banzhuren); getchar(); if (54 { students[num].C_Mark += 5; } num++; } } /*修改学生信息*/ void Student_Modify() { system("cls"); system("color f0"); float a1,a2,a3,a4,a5,a6,a7,a8; float j=0; while(1) { char id[20]; int index; printf("请输入要修改的学生的学号:"); scanf("%s",&id); getchar(); index=Student_SearchByIndex(id); if (index==-1) { printf("该学生不存在! "); } else { printf("你要修改的学生信息为: "); Student_DisplaySingle(index); printf("-- 请输入新值-- "); /*printf("请输入学号:"); scanf("%s",&students[index].ID); getchar(); printf("请输入姓名:"); scanf("%s",&students[index].Name); getchar(); printf("请输入宿舍号:"); scanf("%s",&students[index].sushe); getchar(); printf("请输入高等数学成绩:"); scanf("%f",&students[index].mathA1); getchar(); printf("请输入大学英语成绩:"); scanf("%f",&students[index].EnglishA1); getchar(); printf("请输入软件技术导论成绩:"); scanf("%f",&students[index].software); getchar(); printf("请输入中国近代史纲要成绩:"); scanf("%f",&students[index].china_history); getchar(); printf("请输入军事教育:"); scanf("%f",&students[index].junshi); getchar(); printf("请输入心理健康教育成绩:"); scanf("%f",&students[index].xinli); getchar(); printf("请输入体育成绩:"); scanf("%f",&students[index].sports); getchar(); printf("请输入C语言成绩:"); scanf("%f",&students[index].C_Mark); getchar(); printf("请输入班主任评分:"); scanf("%f",&students[num].Banzhuren); getchar();*/ printf("请输入学号:"); scanf("%s",&students[index].ID); getchar(); printf("请输入姓名:"); scanf("%s",&students[index].Name); getchar(); printf("请输入宿舍号:"); scanf("%s",&students[index].sushe); getchar(); printf("请输入高等数学成绩:"); scanf("%f",&students[index].mathA1); getchar(); if (59 a8= 1.5; else a8=0; printf("请输入大学英语成绩:"); scanf("%f",&students[index].EnglishA1); getchar(); if (59 a1= 2; else a1=0; printf("请输入软件技术导论成绩:"); scanf("%f",&students[index].software); getchar(); if (59 a2= 1.5; else a2=0; printf("请输入中国近代史纲要成绩:"); scanf("%f",&students[index].china_history); getchar(); if (59 a3= 2.5; else a3=0; printf("请输入军事教育:"); scanf("%f",&students[index].junshi); getchar(); if (59 a4= 2; else { a4=0; } printf("请输入心理健康教育成绩:"); scanf("%f",&students[index].xinli); getchar(); if (59 a5= 1.5; else a5=0; printf("请输入体育成绩:"); scanf("%f",&students[index].sports); getchar(); if (59 a6= 2; else a6=0; printf("请输入C语言成绩:"); scanf("%f",&students[index].C_Mark); getchar(); if (59 a7= 3.5; else a7=0; printf("请输入班主任评分:"); scanf("%f",&students[index].Banzhuren); getchar(); students[index].pingjun=a1+a2+a3+a4+a5+a6+a7+a8; //总学分 j=(students[index].pingjun*0.4)+(students[index].Banzhuren*0.6); students[index].Cepingfen=j; } printf("是否继续?(Y/N),继续请按任意键,否则输入N:"); if (getchar()=='N') { break; } } } /*按学号删除学生信息*/ void Student_Delete() { system("cls"); system("color f0"); IO_ReadInfo(); int i; while(1) { char id[20]; int index; printf("请输入要删除的学生的学号:"); scanf("%s",&id); getchar(); index=Student_SearchByIndex(id); if (index==-1) { printf("学生不存在! "); } else { printf("你要删除的学生信息为: "); Student_DisplaySingle(index); printf("%d",index); printf("%d",num); { for (i=index;i { students[i]=students[i+1]; //把后边的对象都向前移动 } num--; } printf("已删除 "); IO_WriteInfo(); } printf("是否继续删除?(Y/N),继续请按任意键,否则输入N:"); if (getchar()=='N') { break; } } } /*按姓名删除学生信息*/ void Student_Delete_1() { system("cls"); system("color f0"); IO_ReadInfo(); int i; while(1) { char name[20]; int index; printf("请输入要删除的学生的姓名: "); scanf("%s",&name); getchar(); index=Student_SearchByName(name); if (index==-1) { printf("学生不存在! "); } else { printf("你要删除的学生信息为: "); Student_DisplaySingle(index); { for (i=index;i { students[i]=students[i+1]; //把后边的对象都向前移动 } num--; } printf("已删除 "); IO_WriteInfo(); } printf("是否继续删除?(Y/N),继续请按任意键,否则输入N:"); if (getchar()=='N') { break; } } } /*按姓名查询*/ void Student_Select_1() { while(1) { char name[20]; int index; printf("请输入要查询的学生的姓名:"); scanf("%s",&name); getchar(); index=Student_SearchByName(name); if (index==-1) { printf("学生不存在! "); } else { printf("你要查询的学生信息为: "); Student_DisplaySingle(index); } printf("是否继续?(Y/N),继续请按任意键,否则输入N:"); if (getchar()=='N') { break; } } } /*按学号查找*/ void Student_Select_2() { while(1) { char ID[20]; int index; system("cls"); system("color f0"); printf("请输入要查询的学生的学号:"); scanf("%s",&ID); getchar(); index=Student_SearchByIndex(ID); if (index==-1) { printf("学生不存在! "); } else { printf("你要查询的学生信息为: "); Student_DisplaySingle(index); } printf("是否继续?(Y/N),继续请按任意键,否则输入N:"); if (getchar()=='N') { break; } } } void Student_Search_menu() { int choice; while(1) { system("cls"); system("color f0"); printf(" 1. 按姓名查询学生记录 "); printf(" 2. 按学号查询学生记录 "); printf(" 3. 返回上一级菜单 "); printf(" 4. 返回主菜单 "); printf(" 请选择(1-4):"); scanf("%d",&choice); getchar(); switch(choice) { case 1:Student_Select_1(); break; case 2:Student_Select_2(); break; case 3:Level_2_menu(); break; case 4:Level_menu(); break; } } } /*按C语言成绩从高到低排序*/ void Student_From_high_to_low() { int i,j; struct Student tmp; for (i=0;i { for (j=1;j { if (students[j-1].C_Mark { tmp=students[j-1]; students[j-1]=students[j]; students[j]=tmp; } } } } /*按C语言成绩从低到高排序*/ void Student_From_low_to_high() { int i,j; struct Student tmp; for (i=0;i { for (j=1;j { if (students[j-1].C_Mark>students[j].C_Mark) { tmp=students[j-1]; students[j-1]=students[j]; students[j]=tmp; } } } } /*按综合测评从高到低排序*/ void Student_From_high_to_low1() { int i,j,k; struct Student tmp; for (i=0;i { for (j=1;j { if (students[j-1].Cepingfen { tmp=students[j-1]; students[j-1]=students[j]; students[j]=tmp; } } } /*system("cls"); system("color f0"); while(1) { int k; printf("%10s%10s %8s%8s%8s%8s%8s%8s%8s%8s%8s%8s%8s%8s ","学号","姓名","宿舍号"," 高等数学","大学英语","软件技术导论","中国近代史","军事教育","心理健康教育","大学体育","C语言成绩","品行分","班主任评分","测评分"); printf("------------------------------------------------------------------------------------------------------------------------------------------------------------------------- "); for (k=0;k { if(59 { printf("%10s%10s %8s %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f ",students[k].ID,students[k].Name,students[k].sushe,students[k].mathA1,students[k].EnglishA1,students[k].software,students[k].china_history,students[k].junshi,students[k].xinli,students[k].sports,students[k].C_Mark,students[k].pingjun,students[k].Banzhuren,students[k].Cepingfen); } } printf("数据加载完毕!"); jiangxue_menu(); Student_Tongji_menu3(); } */ } /*奖学金评定办法*/ void jiangxue_menu() { float i=0,j=0,k=0; int a,b,c; i=num*0.1; j=num*0.15; k=num*0.2; a=(int)i; b=(int)j; c=(int)k; printf("一等奖获得人数为:%d ",a); printf("二等奖获奖人数为:%d ",b); printf("三等奖获奖人数为:%d ",c); } //对奖学金及格的人员筛选出来 void jiangxue() { system("cls"); system("color f0"); while(1) { int k; printf("%10s%10s %8s%8s%8s%8s%8s%8s%8s%8s%8s%8s%8s%8s ","学号","姓名","宿舍号"," 高等数学","大学英语","软件技术导论","中国近代史","军事教育","心理健康教育","大学体育","C语言成绩","品行分","班主任评分","测评分"); printf("------------------------------------------------------------------------------------------------------------------------------------------------------------------------- "); for (k=0;k { if(59 { printf("%10s%10s %8s %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f ",students[k].ID,students[k].Name,students[k].sushe,students[k].mathA1,students[k].EnglishA1,students[k].software,students[k].china_history,students[k].junshi,students[k].xinli,students[k].sports,students[k].C_Mark,students[k].pingjun,students[k].Banzhuren,students[k].Cepingfen); } } printf("数据加载完毕!"); jiangxue_menu(); Student_Tongji_menu3(); } } /*显示学生信息*/ void Student_Display() { system("cls"); system("color f0"); while(1) { int i; printf("%10s%10s %8s%8s%8s%8s%8s%8s%8s%8s%8s%8s ","学号","姓名","宿舍号"," 高等数学","大学英语","软件技术导论","中国近代史","军事教育","心理健康教育","大学体育","C语言成绩","品行分"); printf("------------------------------------------------------------------------------------------------------------------------------------------------------------------------- "); for (i=0;i { printf("%10s%10s %8s %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f ",students[i].ID,students[i].Name,students[i].sushe,students[i].mathA1,students[i].EnglishA1,students[i].software,students[i].china_history,students[i].junshi,students[i].xinli,students[i].sports,students[i].C_Mark,students[i].pingjun); } printf("是否继续?(Y/N),继续请按任意键,否则输入N:"); if (getchar()=='N') { break; } } } /*显示学生信息1*/ void Student_Display1() { system("cls"); system("color f0"); while(1) { int i; printf("%10s%10s %8s%8s%8s%8s%8s%8s%8s%8s%8s%8s%8s%8s ","学号","姓名","宿舍号"," 高等数学","大学英语","软件技术导论","中国近代史","军事教育","心理健康教育","大学体育","C语言成绩","品行分","班主任评分","测评分"); printf("------------------------------------------------------------------------------------------------------------------------------------------------------------------------- "); for (i=0;i { printf("%10s%10s %8s %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f ",students[i].ID,students[i].Name,students[i].sushe,students[i].mathA1,students[i].EnglishA1,students[i].software,students[i].china_history,students[i].junshi,students[i].xinli,students[i].sports,students[i].C_Mark,students[i].pingjun,students[i].Banzhuren,students[i].Cepingfen); } printf("数据加载完毕!"); Student_Tongji_menu3(); } } /*显示学生信息2在奖学金评定时使用*/ void Student_Display2() { system("cls"); system("color f0"); while(1) { int i; printf("%10s%10s %8s%8s%8s%8s%8s%8s%8s%8s%8s%8s%8s%8s ","学号","姓名","宿舍号"," 高等数学","大学英语","软件技术导论","中国近代史","军事教育","心理健康教育","大学体育","C语言成绩","品行分","班主任评分","测评分"); printf("------------------------------------------------------------------------------------------------------------------------------------------------------------------------- "); for (i=0;i { printf("%10s%10s %8s %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f ",students[i].ID,students[i].Name,students[i].sushe,students[i].mathA1,students[i].EnglishA1,students[i].software,students[i].china_history,students[i].junshi,students[i].xinli,students[i].sports,students[i].C_Mark,students[i].pingjun,students[i].Banzhuren,students[i].Cepingfen); } printf("数据加载完毕!"); jiangxue_menu(); Student_Tongji_menu3(); } } /*将学生信息从文件(student database.txt)中读出*/ void IO_ReadInfo() { FILE *fp; int i; if ((fp=fopen("student database.txt","rb"))==NULL) { printf("不能打开文件! "); return; } if (fread(&num,sizeof(int),1,fp)!=1) { num=-1; } else { for(i=0;i { fread(&students[i],sizeof(struct Student),1,fp); } } fclose(fp); } /*将学生信息写入文件(Database.txt)*/ void IO_WriteInfo() { FILE *fp; int i; if ((fp=fopen("student database.txt","wb"))==NULL) { printf("不能打开文件! "); return; } if (fwrite(&num,sizeof(int),1,fp)!=1) { printf("写入文件错误! "); } for (i=0;i { if (fwrite(&students[i],sizeof(struct Student),1,fp)!=1) { printf("写入文件错误! "); } } fclose(fp); } /*一级菜单*/ /*账号密码登录*/ void Level_1_menu( ) { char account[20]; char password[30]; int i = 0; int j = 3; for (; i < 3; i++){ printf(" *主菜单* "); printf(" ****************** "); printf(" *请输入您的账号:* "); printf(" ****************** "); printf(" 请输入:"); scanf ("%s", account); printf(" ****************** "); //scanf ("%s", account); printf(" ****************** "); printf(" *请输入您的密码:* "); printf(" ****************** "); printf(" 请输入:"); scanf ("%s", password); if (strcmp(USER, account) == 0 && strcmp(PW, password) == 0){ printf("登录成功! "); break; } else{ j--; printf("登录失败您还有%d次机会! ", j); } } if (i == 3){ printf("登录失败,退出!"); } //system("pause"); system("cls"); system("color f0"); } /*增加学生信息三级菜单模块*/ void Student_add_Level_3_menu() { int choice; while(1) { system("cls"); system("color f0"); IO_ReadInfo(); //读取文件 printf(" 1. 单个添加学生信息 "); printf(" 2. 批量添加学生信息 "); printf(" 3. 返回上一级菜单 "); printf(" 4. 返回主菜单 "); printf(" 请选择(1-4):"); scanf("%d",&choice); getchar(); switch(choice) { case 1:Student_Insert(); IO_WriteInfo(); //写入文件 break; case 2:Student_many1(); IO_WriteInfo(); //写入文件 break; case 3:Level_2_menu(); break; case 4:Level_menu(); break; } IO_WriteInfo(); //写入文件 } //Student_Insert(); } /*二级菜单*/ /*主菜单*/ void Level_2_menu( ) { int choice; while(1) { /*二级菜单*/ /*主菜单*/ system("cls"); system("color f0"); IO_ReadInfo(); //读取文件 printf(" ------ 学生成绩管理系统------ "); printf(" 1. 增加学生记录 "); printf(" 2. 修改学生记录 "); printf(" 3. 删除学生记录 "); printf(" 4. 查询学生记录 "); printf(" 5. 统计学生记录 "); printf(" 6. 退出 "); printf(" 请选择(1-6):"); scanf("%d",&choice); getchar(); switch(choice) { case 1: Student_add_Level_3_menu(); break; case 2: Student_Modify(); break; case 3: student_Delete_menu(); break; case 4: Student_Search_menu(); break; case 5: Student_Tongji_menu(); break; case 6: Level_menu(); break; } IO_WriteInfo(); } } /*学生端成绩查询模块*/ void student_Delete_menu() { int choice; while(1) { system("cls"); system("color f0"); IO_ReadInfo(); //读取文件 printf(" ************************ "); printf(" * 删除学生信息菜单****** "); printf(" ************************ "); printf(" *1、按姓名删除信息 * "); printf(" *2、按学号删除信息 * "); printf(" *3、返回上一级功能菜单 * "); printf(" *4、返回主菜单 * "); printf(" ************************ "); printf(" ************************ "); printf(" 请选择(1-4):"); scanf("%d",&choice); switch(choice) { case 1: system("cls"); system("color f0"); Student_Delete_1(); break; case 2: system("cls"); system("color f0"); Student_Delete(); break; case 3: Level_2_menu(); break; case 4: Level_menu(); break; } IO_WriteInfo(); } } /*学生端成绩查询模块*/ void student_menu() { int choice; while(1) { system("cls"); system("color f0"); IO_ReadInfo(); //读取文件 printf(" ******************* "); printf(" * 学生菜单 * "); printf(" ******************* "); printf(" *1、按姓名查询成绩* "); printf(" *2、按学号查询成绩* "); printf(" *3、查询课程信息 * "); printf(" *4、退出 * "); printf(" ******************* "); printf(" ******************* "); printf(" 请选择(1-3):"); scanf("%d",&choice); switch(choice) { case 1: system("cls"); system("color f0"); Student_Select_1(); break; case 2: Student_Select_2(); break; case 3: student_menu1(); break; case 4: Level_menu(); break; } IO_WriteInfo(); } } void student_Kecheng_menu1() { printf(" ************************************************ "); printf(" * 课程代号 课程名称 学分 必修/选修* "); printf(" *B27020100 中国近现代史纲要 2.0 必修 * "); printf(" *B10060111 大学英语A1 4.0 必修 * "); printf(" *B14010101 大学体育1 2.0 必修 * "); printf(" *B06010111 高等数学A1 5.0 必修 * "); printf(" *B08050101 软件技术导论 2.0 必修 * "); printf(" *B08010100 C语言程序设计 5.0 必修 * "); printf(" *B08010201 C语言程序设计实训1 2.0 必修 * "); printf(" *B08056601 创新与指导实践1 1.0 必修 * "); printf(" *B21991100 军事教育 2.0 选修 * "); printf(" ************************************************** "); printf(" ************************************************** "); printf(" 1. 返回上一级菜单 "); printf(" 2. 返回主菜单 "); printf(" 请选择(1-2):"); int choice; scanf("%d",&choice); while(1) switch(choice) { case 1:student_menu1(); break; case 2:Level_menu(); break; } //写入文件 } void student_Kecheng_menu2() { printf(" ************************************************ "); printf(" * 课程代号 课程名称 学分 必修/选修* "); printf(" *B27010100 思想道德修养 3.0 必修 * "); printf(" *B10060112 大学英语A2 4.0 必修 * "); printf(" *B14010102 大学体育2 2.0 必修 * "); printf(" *B06010112 高等数学A2 5.0 必修 * "); printf(" *B08052200 数字逻辑设计 2.0 必修 * "); printf(" *B06050131 大学物理C1 2.5 必修 * "); printf(" *B06020100 离散数学 4.0 必修 * "); printf(" *B08056601 创新与指导实践2 1.0 必修 * "); printf(" *B21991100 C语言程序设计实践2 2.0 选修 * "); printf(" ************************************************** "); printf(" ************************************************** "); printf(" 1. 返回上一级菜单 "); printf(" 2. 返回主菜单 "); printf(" 请选择(1-2):"); int choice; scanf("%d",&choice); while(1) switch(choice) { case 1:student_menu1(); break; case 2:Level_menu(); break; } //写入文件 } /*学生端学生课程查询模块*/ void student_menu1() { int choice; while(1) { system("cls"); system("color f0"); IO_ReadInfo(); //读取文件 printf(" ******************* "); printf(" * 课程信息 * "); printf(" ******************* "); printf(" *1、第一学期 * "); printf(" *2、第二学期 * "); printf(" *3、第三学期 * "); printf(" *4、第四学期 * "); printf(" *5、第五学期 * "); printf(" *6、第六学期 * "); printf(" *7、第七学期 * "); printf(" *8、退出 * "); printf(" ******************* "); printf(" ******************* "); printf(" 请选择(1-3):"); scanf("%d",&choice); switch(choice) { case 1: system("cls"); system("color f0"); student_Kecheng_menu1(); break; case 2: system("cls"); system("color f0"); student_Kecheng_menu2(); break; case 3: break; case 4: break; case 5: break; case 6: break; case 7: break; case 8: Level_menu(); break; } IO_WriteInfo(); } } /*统计菜单模块*/ void Student_Tongji_menu() { int choice; while(1) { system("cls"); system("color f0"); IO_ReadInfo(); //读取文件 printf(" ****************************** "); printf(" * 学生统计菜单 * "); printf(" ****************************** "); printf(" *1、按C语言成绩从高到低排序 * "); printf(" *2、按C语言成绩从低到高排序 * "); printf(" *3、按宿舍成员进行统计 * "); printf(" *4、奖学金评定 * "); printf(" *5、返回功能菜单 * "); printf(" *6、返回主菜单 * "); printf(" ****************************** "); printf(" ****************************** "); printf(" 请选择(1-5):"); scanf("%d",&choice); switch(choice) { case 1: Student_From_high_to_low(); Student_Display1(); break; case 2: Student_From_low_to_high(); Student_Display1(); break; case 3: Student_SearchBySushe(); break; case 4: Student_From_high_to_low1(); Student_Display2(); break; case 5: Level_2_menu( ); break; case 6: Level_menu(); break; } IO_WriteInfo(); } } /*统计菜单模块*/ void Student_Tongji_menu2() { int choice; while(1) { IO_ReadInfo(); //读取文件 printf(" ****************************** "); printf(" * 你目前在学生宿舍统计页面! * "); printf(" ****************************** "); printf(" *1、返回上一级统计菜单 * "); printf(" *2、返回功能选择菜单 * "); printf(" *3、返回主菜单 * "); printf(" ****************************** "); printf(" ****************************** "); printf(" 请选择(1-3):"); scanf("%d",&choice); switch(choice) { case 1: system("cls"); system("color f0"); Student_Tongji_menu(); case 2: system("cls"); system("color f0"); Level_2_menu( ); case 3: system("cls"); system("color f0"); Level_menu(); } } } /*统计菜单模块*/ void Student_Tongji_menu3() { int choice; while(1) { IO_ReadInfo(); //读取文件 printf(" ****************************** "); printf(" * 你目前按C语言成绩统计页面!* "); printf(" ****************************** "); printf(" *1、返回上一级统计菜单 * "); printf(" *2、返回功能选择菜单 * "); printf(" *3、返回主菜单 * "); printf(" ****************************** "); printf(" ****************************** "); printf(" 请选择(1-3):"); scanf("%d",&choice); switch(choice) { case 1: system("cls"); system("color f0"); Student_Tongji_menu(); case 2: system("cls"); system("color f0"); Level_2_menu( ); case 3: system("cls"); system("color f0"); Level_menu(); } } } /*第一级主菜单学生or老师的判断*/ void Level_menu() { int choice; while(1) { system("cls"); system("color f0"); printf(" ****************** "); printf(" *1、教师端 * "); printf(" *2、学生端 * "); printf(" *3、退出 * "); printf(" ****************** "); printf(" 请选择(1-3):"); scanf("%d",&choice); switch(choice) { case 1: system("cls"); system("color f0"); Level_1_menu(); //一级菜单,密码登录。 IO_ReadInfo(); //读取文件 Level_2_menu(); //二级菜单-主菜单 IO_WriteInfo(); break; case 2: student_menu(); break; case 3: exit(0); break; } } } /***********主程序*********/ main() { Level_menu(); }