学籍信息管理系统设计源代码(共16页).doc
《学籍信息管理系统设计源代码(共16页).doc》由会员分享,可在线阅读,更多相关《学籍信息管理系统设计源代码(共16页).doc(16页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上#include #define N 50#define M 200int stumax=0,scoremax=0;FILE *fp;struct student char num9; /学号 char name20; /姓名 int sex; /性别 int room; /宿舍号码 long int tel; /电话号码stuN;struct stuscore char num9; /学号 char coursenum10; /课程编号 char course15; /课程名称 float point; /学分 int nscore; /平时成绩 int expsc
2、ore; /实验成绩 int examscore; /卷面成绩 int comscore; /综合成绩 float getpoint;/实得学分scoreM,score1M;void enter_stu();void input_stu(int j);void enter_score();void input_score(int i);void com_score(int i);void browse_stu();void browse_score();void search();void search_stu();void search_num();void search_name();vo
3、id search_room();void search_score();void printf_onestu_score(char snum);void delete_one();void order();void order_course_num();void order_course();void order_printf(int k);/*菜单*/void menu() int w1; char n; /*变量n保存选择菜单数字,w1判断输入的数字是否在功能菜单对应数字范围内*/ system(cls); do puts(*nn); puts(t * 总菜单 *nn); puts(t*
4、 1.输入学生的基本信息 *); puts(t* 2.浏览学生的基本信息 *); puts(t* 3.输入学生的成绩基本信息 *); puts(t* 4.浏览学生的成绩基本信息 *); puts(t* 5.查询信息功能 *); puts(t* 6.删除信息功能 *); puts(t* 7.排序:按综合成绩或实得学分 *); puts(t* 8.退出 *); puts(nn*); printf(n选择要进行的功能代号(1-8): bb); scanf(%c,&n); if(n8) /*对选择的数字作判断*/ w1=1; printf(nn? 请输入数字 18!nn); else w1=0; /*
5、选择功能*/ switch(n) case 1:enter_stu();break; /*输入基本信息模块*/ case 2:browse_stu();break; /*浏览基本信息模块*/ case 3:enter_score();break; /*输入成绩基本信息模块*/ case 4:browse_score();break; /*浏览成绩基本信息模块*/ case 5:search();break; /*查找模块*/ case 6:delete_one();break; /*删除学籍模块*/ case 7:order();break; /*排序模块*/ case 8:exit(0);
6、while(w1=1); getch();/*主函数*/void main() menu(); /*进入菜单*/*公用函数*/*保存所有分数*/void save_score() int i; if(fp=fopen(b.txt,w+)=NULL) /*以输出方式打开,在此前的记录被覆盖*/ printf(n 不能打开文件.); getch(); for(i=0;iscoremax;i+) if(fwrite(&scorei,sizeof(struct stuscore),1,fp)!=1) printf(n 文件输入错误.); fclose(fp); printf(n 输入数据结束.Pres
7、s any key to continue . . .);getch();/*保存所有学生信息*/void save() int i; if(fp=fopen(a.txt,w+)=NULL) /*以输出方式打开,在此前的记录被覆盖*/ printf(n不能打开文件); getch(); for(i=0;istumax;i+) if(fwrite(&stui,sizeof(struct student),1,fp)!=1) printf(n文件输入错误.); fclose(fp);/*显示一个分数,形参i表示显示第i个记录*/void printf_one_score(int i) printf
8、(n学号:%s 课程编号:%s 课程名称:%s 学分:%fn 平时成绩:%d 实验成绩:%d 卷面成绩:%d 综合成绩:%d 实得学分:%f,scorei.num,scorei.coursenum,scorei.course,scorei.point,scorei.nscore,scorei.expscore,scorei.examscore,score,scorei.getpoint);/*显示一个学生信息,形参j表示显示第j个记录*/void printf_one_stu(int j) printf(n学号:%s 姓名:%s 性别:%d 宿舍号码:%d 电话号码:%ld,stuj.num,
9、stuj.name,stuj.sex,stuj.room,stuj.tel);/*删除一个分数,形参i表示删除第i个记录*/void delete_one_score(int i) printf_one_score(i); scorei=scorescoremax; scoremax-; printf(n删除学生数据成功!Press any key to continue . . .); getch(); save_score();/*录入模块*/*学生信息录入*/void enter_stu() int i,n,es1; printf(n要输入多少学生基本信息(1%d)? ,N-1); sc
10、anf(%d,&n); /*要输入的学生基本信息的个数*/ es1=n+stumax; /*输入n个后应有的记录个数*/ printf(n输入信息:); for(i=stumax;ies1;i+) input_stu(i); /*调用输入学生基本信息函数*/ printf(n共输入 %d 项基本信息.Press any key to continue . . .,n);getch();menu(); /*提示输入任务结束,按任意键返回主菜单*/*录入一个学生信息*/void input_stu(int j) int i1,k=0,d; switch(j+1)%10) case 1:printf
11、(n Input the %dst students information:,j+1);break; case 2:printf(n Input the %dnd students information:,j+1);break; default:printf(n Input the %dth students information:,j+1); printf(n学号 姓名 性别 宿舍号码 电话号码n); scanf(%s%s%d%d%ld,stuj.num,stuj.name,&stuj.sex,&stuj.room,&stuj.tel); stumax+; /*输入一个信息,总数加1*
12、/ for(i1=0;i1stumax;i1+) if(i1!=j&strcmp(stui1.num,stuj.num)=0) /*表示学号已存在*/ k=1; /*k为学号是否已存在标记,k=1表存在*/ printf_one_stu(i1); /*显示已存在的学号的信息*/ printf(n此学生存在!); /*提示学号已存在*/ stumax-; /*总数减1,删除输入信息*/ printf(n删除信息成功!); save(); /*调用保存函数*/ break; if(k=0) /*表示学号不重复*/ printf(n输入信息成功!); /*提示输入成功*/ save(); /*调用保
13、存函数*/ /*学生成绩信息录入*/void enter_score() int i,n,es1; printf(n要输入的学生基本信息的个数(1%d)? ,M-1); scanf(%d,&n); /*要输入的学生基本信息的个数*/ es1=n+scoremax; /*输入n个后应有的记录个数*/ printf(n输入数据:n); for(i=scoremax;ies1;i+) input_score(i); /*调用输入学生成绩基本信息函数*/ save_score(); /*调用保存学生成绩基本信息函数*/ printf(n 共输入了 %d 项数据.Press any key to con
14、tinue . . .,n);getch();menu(); /*提示输入任务结束,按任意键返回主菜单*/*录入一个成绩*/void input_score(int i) int j,j1,k,c; float a; switch(i+1)%10) case 1:printf(n Input the %dst students score:,i+1);break; case 2:printf(n Input the %dnd students score:,i+1);break; default:printf(n Input the %dth students score:,i+1); pri
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学籍 信息管理 系统 设计 源代码 16
限制150内