学生成绩统计查询系统

2022-05-17 13:14:24   文档大全网     [ 字体: ] [ 阅读: ]

#文档大全网# 导语】以下是®文档大全网的小编为您整理的《学生成绩统计查询系统》,欢迎阅读!
查询系统,成绩,统计,学生
学生成绩统计查询系统 实现功能:

1)全体学生求总分平均成绩、最高成绩、最低成绩、和按分数段求出各段成绩的人数。

2)每个学生的平均分、 每门课的平均分、找出最高的分数所对应的学生和课程

3)找出有两(N)门以上不及格的学生,输出他们的学号和全部课程成绩及平均成绩。 4)找出平均成绩在90(任意分)以上或全部课程成绩在85(任意分)以上的学生。



问题分析与算

假定总共5课程,总共 10 个学生,可以用宏来定义它们 #define COURCES 5 /*课程总数*/ define STUDENTS 10 /*学生总数*/

COURCESSTUDENTS的值可以根据实际需要设定。

根据需要实现的功能,程序需要的数据有学生的学号,每门课程的名称,学生每门课程的成绩,学号和成绩可以用整型数据,课程名称用字符型数组,假定每门课程名称不超过32字符。设计如下一个struc struct query{ int number; /*学号*/ int scores[5]; /*分数*/ char* cources[COURCES]; /*5课程名称*/ int totalScore; /*总成绩*/ };

定义如下一个query类型的全局数组来存放所有学生的数据: struct query studentScore[STUDENTS];


假设设定5门功课分别为:

English, C, Physics, Maths, Biology

那么对于任意一个studentScore[i]. cources, studentScore[i]. cources[0] = English”; studentScore[i]. cources[1] = C”;

studentScore[i]. cources[2] = Physics”; studentScore[i]. cources[3] = Maths”; studentScore[i]. cources[4 = Biology”; 其中, i>= 0 i< STUDENTS

该系统要实现的功能是学生成绩统计查询,不需要用户录入数据,不过程序的运行需要数据支持,所以我们要实现一个函数InitStudentScore()去给全局数组studentScore赋值。另外,查询系统需要实现一个查询界面来获取用户的查询需要,创建一个函数WellCome()来实现这个功能。

功能1:要求实现全体学生求总分平均成绩、最高成绩、最低成绩、和按分数段求出各段成绩的人数。

可以编写一个函数TotalQuery(),定义3个整型变量,int totalScores 用来存放全体学生总成绩, int highestScore用来存放最高总成绩,int lowestScore用来存放最低总成绩。 假定每门课程满分100,则总分满分为500 可以统计每个学生的所有科目的总成绩并以100分为分段求出各个分段的人数。

功能2:每个学生的平均分、 每门课的平均分、找出最高的分数所对应的学生和课程 可以编写一个函数SingleQuery()

每个学生的平均分可以用studentScore[i].totalScore/COURCES实现(0 <= i< STUDENTSi门课的平均分可以通过将每个学生studentScore[i]. scores[i]相加再除以STUDENTS( i大于等于0小于 COURCES) 找出最高的分数所对应的学生和课程:可以通过比较每个学生的每门功课成绩,找出其中成绩最高者

功能3找出有两(N)门以上不及格的学生,输出他们的学号和全部课程成绩及平均成绩。 编写一个函数 QueryNotPassed() 查询每个学生的每门功课成绩,若有2门以上不及格,则输出他们的学号和全部课程成绩及平均分。

4)找出平均成绩在90(任意分)以上或全部课程成绩在85(任意分)以上的学生。 编写一个QueryOutstanding()函数,统计每个学生的平均分,若高于90 则输出 主程序main()的算法分析:

InitStudentScore


studentScore[STUDENTS]中。

其次,调用WellCome(),显示查询界面。

第三,根据用户输入的指令,分别调用TotalQuery()SingleQuery()QueryNotPassed()QueryOutstanding()四个函数。


本文来源:https://www.wddqxz.cn/648df4db50e2524de5187e91.html

相关推荐