学生学籍信息管理系统设计

上传人:博****1 文档编号:557498627 上传时间:2023-06-30 格式:DOCX 页数:38 大小:553.75KB
返回 下载 相关 举报
学生学籍信息管理系统设计_第1页
第1页 / 共38页
学生学籍信息管理系统设计_第2页
第2页 / 共38页
学生学籍信息管理系统设计_第3页
第3页 / 共38页
学生学籍信息管理系统设计_第4页
第4页 / 共38页
学生学籍信息管理系统设计_第5页
第5页 / 共38页
点击查看更多>>
资源描述

《学生学籍信息管理系统设计》由会员分享,可在线阅读,更多相关《学生学籍信息管理系统设计(38页珍藏版)》请在金锄头文库上搜索。

1、C 语言课程设计院系:姓名:学号:班号: 指导教师: 日期:2007年9月题目要求1. 学生学籍信息管理系统设计要求 使用下面的数据设计一个简单的学籍管理系统 学生基本信息文件(A.TXT)极其内容: 学号 姓名 性别 宿舍号码 电话号码01 张成成 男 501 8773211102 李成华 女 101 8772311203 王成凤 女 101 8772311204 张明明 男 502 8773433305 陈东 男 501 8773211106 李果 男 502 8773433307 张园园 女 102 87756112学生成绩基本信息文件(B.TXT)极其内容:学号 课程编号 课程名称 学

2、分平时成绩 实验成绩 卷面成绩 综合成绩 实得学分01 A01 大学物理 3 66 78 8202 B03 高等数学 4 78 -1 9001 B03 高等数学 4 45 -1 8802 C01 VF 3 65 76 66功能要求极其说明:( 1)数据录入功能:录入每个学生的学号、课程编号、课程名称、学分、平时成绩、 实验成绩、卷面成绩共7 个数据。实得成绩、实得学分根据条件自动运算。 综合成绩的计算:a. 如果本课程的实验成绩为-1,则表无实验成绩,综合成绩=平时成绩*30%+卷面成绩 *70%b. 如果实验成绩不为-1,表示本课程有实验成绩,综合成绩=平时成绩*15%+实验成绩 *15%+

3、卷面成绩*70%实得学分的计算:采用等级学分制。综合成绩在90100之间,应得学分=学分*100% 综合成绩在8090之间,应得学分=学分*80% 综合成绩在7080之间,应得学分=学分*75% 综合成绩在6070之间,应得学分=学分*60% 综合成绩在60分以下,应得学分=学分*0%( 2)查询功能:分为学生基本情况查询和成绩查询两种 学生基本情况查询: 输入一个学号或姓名(可实现选择)查出此学生的基本信息并显示输出。 输入一个宿舍号码,可查出本室所有学生的基本信息并显示输出。 称号查询:输入一个学号时,查出此学生所有课程情况,格式如下:学号:XX课程名称:XXXX综合成绩:XX实得学分:X

4、XX共修:X科,实得总分为:XXX(3)删除功能:当在A.TXT中删除一个学生时,自动地在B.TXT中删除此学生所有信 息。( 4)排序功能:能实现选择按综合成绩或实得学分升序或降序排序并显示数据。 提示 数据结构采用结构体数组,提供学生基本信息和学生成绩基本信息结构体数组。二 需求分析根据题目要求,该程序应具备的功能有: (1)数据录入功能:录入每个学生的学号、课程编号、课程名称、学分、平时成绩、实验 成绩、卷面成绩共7个数据。实得成绩、实得学分根据条件自动运算。( 2)查询功能:分为学生基本情况查询和成绩查询两种(3)删除功能:当在A.TXT中删除一个学生时,自动地在B.TXT中删除此学生

5、所有信息。( 4)排序功能:能实现选择按综合成绩或实得学分升序或降序排序并显示数据。三 程序总体设计四 程序详细设计1主函数 主函数一般设计得比较简洁,只提供输入,处理和输出部分的函数调用。其中各功能模块用菜单方式选择。流程图程序void main()while(1)clrscr(); /*清屏幕*/ gotoxy(1,1); /*移动光标*/ textcolor(BLACK); /*设置文本显示颜色为黄色*/ textbackground(GREEN); /*设置背景颜色为蓝色*/ window(1,1,99,99); /* 制作显示菜单的窗口,大小根据菜单条数设计*/ clrscr();p

6、rintf(nnn);printf(* = * n);printf(* 1input 2cha zhao * n);printf(* 3delete 4paixu xianshi * n);printf(* 5exit * n);printf(* * n);printf(* * n);printf( Please input which you want(1-5):);ch=getch();switch(ch)case 1:input();break;case 2:search(); getch();break;case 3:delete();getch(); break;case 4:sor

7、t(); getch();break; case 5:exit(0); default: continue;2 个功能模块设计数据录入。数据结构我们需要录入的信息数据有两类:一类是学生基本信息,包括学号,学号 姓名 性别 宿 舍号码电话号码,存放在文件S_INFO.TXT中。另一类信息是学生成绩基本信息,包括学 号、课程编号、课程名称、学分、平时成绩、实验成绩、卷面成绩共7 个数据。实得成绩、 实得学分根据条件自动运算。这些信息存放在文件S_SCORE.TXT中。 学生基本信息的存放格式为:struct info/名次/宿舍号码/宿舍电话号码int sMingci;char xuehao8;c

8、har name10;char sex2;char d_num4;char tel_num9; data,s_info100;成绩基本信息的存放格式为struct coursechar xuehao8;char course_No6; /课程代号char course_name10;/课程名字float xuefen;/学分float p_chengji;/平时成绩float s_chengji;/实验成绩float j_chengji;/卷面成绩float z_chengji;/综合成绩float s_xuefen;/实际学分course_data,s_course100;需求分析数据录入模

9、块的功能是用户通过输入选项在基本信息和成绩信息的输入之间进行选择 程序void input()while(1)printf(nwhich information do you want to input: b(base) s(socre) e(exit); ch=getch();if(ch=b|ch=B)if(fp=fopen(s_info.txt,at+)=NULL)printf(cannot open this file.n); getch();exit(0); printf(nPlease input xuehao:); gets(sn);while(fread(&data,sizeof

10、(data),1,fp)=1)if(strcmp(sn,data.xuehao)=0)flag=1;if(flag=1)printf(n the number has exist,press ang key continue:n); flag=0;getch(); continue;else strcpy(data.xuehao,sn);printf(Please input name:); gets(data.name);printf(Please input sex:M(male)/F(female):n); gets(data.sex);printf(Please input your

11、dormitory No:); gets(data.d_num);printf(Please input telephone Number:); gets(data.tel_num);fwrite(&data,sizeof(data),1,fp); /写入数据 fclose(fp); /ifelse if(ch=s|ch=S)if(fp1=fopen(s_score.txt,at+)=NULL|(fp=fopen(s_info.txt,rt)=NULL) printf(cannot open this file.n); getch();exit(0); printf(nPlease input

12、 xuehao:);gets(sn); while(fread(&data,sizeof(data),1,fp)=1) if(strcmp(sn,data.xuehao)=0) flag=1;if(!flag) printf(nthis number is not existn);continue;else flag=0; strcpy(course_data.xuehao,sn);printf(nPlease input course No:); gets(course_data.course_No);printf(nPlease input course name:); gets(cour

13、se_data.course_name);printf(nPlease input course xuefeng:); gets(temp);course_data.xuefen=atof(temp);printf(nPlease input pingshi chengji:); gets(temp);course_data.p_chengji=atof(temp);printf(nPlease input shiyan chengji:);gets(temp);course_data.s_chengji=atof(temp);printf(nPlease input juanmian che

14、ngji:);gets(temp);course_data.j_chengji=atof(temp);/以下是综合成绩计算if(course_data.s_chengji=-1) /如果有实验 course_data.z_chengji=(course_data.p_chengji)*0.3+(course_data.j_chengji)*0.7;else /如果无实验course_data.z_chengji=(course_data.p_chengji)*0.15+(course_data.s_chengji)*0.15+(course _data.j_chengji)*0.7;/以下是实际学分计算if(course_data.z_chengji)60) course_data.s_xuefen=0;else if(course_data.z_chengji)70)

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

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号