文档编制序号:[KKIDT-LLE0828-LLETD298-POI08]
文档编制序号:[KKIDT-LLE0828-LLETD298-POI08]
C语言程序报告学生学籍信息管理系统
C语言课程设计
院系:工程学院
姓名:刘若愚
班号指导教师:王老师
日期:9月
C语言程序设计报告
第一部分 题目要求
程序设计题目:学生学籍信息管理系统设计
【要求】
使用下面的数据,设计一个简单的学籍信息管理系统。
学生基本信息文件及其内容:
学号 姓名 性别 宿舍号码 电话号码
07 张园园 女 102
…. …… …. ….. ……….
学生成绩基本信息文件及其内容:
学号 课程编号 课程名称 学分 平时成绩 试验成绩 卷面成绩
01 A
02 B03 高等数学 4 78 -1 90
01 B03 高等数学 4 45 -1 88
02 C
…. ….. ……… .. …. …. …..
功能要求及说明:
数据录入功能:录入每个学生的学号、课程编号、课程名称、学分、平时成绩、试验成绩、卷面成绩共7个数据。综合成绩、实得分根据条件自动运算。
综合成绩的计算:
如果本课程的试验成绩为-1,则表示无试验,综合成绩=平时成绩*30%+卷面成绩*70%;
如果试验成绩不为-1,表示本课程有试验,综合成绩=平时成绩*15%+试验成绩*15%+卷面成绩*70%。
实得学分的计算:采用等级学分制。
综合成绩在90-100之间,应得学分=学分*100%;
综合成绩在80-90之间,应得学分=-学分*80%;
综合成绩在70-80之间,应得学分=学分*75%;
综合成绩在60-70之间,应得学分=学分*60%;
综合成绩在60以下,应得学分=学分*0%。
(2)查询功能;分为学生基本情况查询和成绩查询两种
1》学生基本情况查询:
输入一个学生的学号活姓名,查出此生的基本信息并显示输出。
输入一个宿舍号码,可查询出本室所有的学生的基本信息并显示输出。
成绩查询:
输入一个学号时,查询出此生的所有课程情况,格式如下:
学号: 姓名;
课程编号: 课程名称: 综合成绩: 实得学分:
课程编号: 课程名称: 综合成绩: 实得学分:
课程编号; 课程名称: 综合成绩: 实得学分:
………… ………… …….. …………
共修:XX科, 实得总学分为:XXX
删除功能:当在中删除一个学生时,自动地在中删除此人所有的信息
排序功能:能实现选择按综合成绩或实得学分升序或降序排序并显示数据。
第二部分 需求分析
根据题目要求,由于学生信息是存放在文件中,所以应该提供文件的输入、输出等操作;在程序中要浏览学生的信息,应提供显示、查找、排序等操作;另外还应该提供键盘式选择菜单实现功能选择。
第三部分 总体设计
根据上面的需求分析,可以将这个系统的设计分为以下几个模块:
数据输入学生成绩管理系统数据显示数据查找
数据输入
学生成绩管理系统
数据显示
数据查找
数据插入
成绩排序
第四部分 详细设计
主函数
主函数设计一般要简单,只提供输入,处理和输出部分的函数调用。其中各功能模块用菜单方式选择。
【流程图】
显示一系列功能选项
显示一系列功能选项
输入n,判断n是否是0-7
根据n的值调用各功能模块函数
N
Y
[程序]
#include<>
void menu()
{ int n,w;
do{ puts("\t\t**********MENU***********\n\n");
puts("\t ");
puts("\t ");
puts("\t ");
puts("\n\n\t\t*************************\n");
printf("Choice your number(1-7):[ ] \b\b\b\b");
scanf("%d",&n);
if(n<1||n>7) /对选择的数字作判断/
{w=1;getchar();}
else w=0;}
while (w