数据库课程设计——某工厂的物料管理系统(附Java源码与课程设计报告) 数据库课程设计——某商店进销存管理系统(附Java源码与课程设计报告) 数据库课程设计——某煤气公司送气管理系统(附课设报告) 数据库课程设计——基于JavaEE的企业进销存系统(附Java源码与课程设计报告) Java课程设计——哈夫曼编码译码系统的Java语言实现 C语言课程设计——班级成绩管理系统(附课设报告) C语言课程设计——排班系统 DFS解决(附课设报告)
C语言课程设计——班级成绩管理系统
题目:
对一个有N个学生的班级,每个学生有M门课程。该系统实现对班级成绩的录入、显示、修改、排序、保存等操作的管理。功能要求: (1)本系统采用一个结构体数组,每个数据的结构应当包括:学号、姓名、M门课程名称。 (2)本系统显示这样的菜单: 请选择系统功能项: a、成绩录入 b、成绩显示 c、成绩保存 d、成绩排序 e、成绩修改(要求先输入密码) f、成绩统计 1)显示每门课程成绩最高的学生的基本信息 2)显示每门课程的平均成绩 3)显示超过某门课程平均成绩的学生人数 g、退出系统 1)执行一个具体的功能之后,程序将重新显示菜单。 2)将学生成绩保存到文件中。
代码:
#include
#include
#include
#include
#include
#include
#include
using namespace std;
typedef struct Student{
int ID; /*学生学号*/
char name[15]; /*学生姓名*/
vector subject; /*因未知课程数量,所以课程数量采用动态数组vector*/
double sum; /*学生各科成绩总分*/
}Student;
struct Rule{ /*排序规则*/
bool operator()(const Student &stu1,const Student &stu2)const
{
if(stu1.sum!=stu2.sum) /*总分不相等按照总分从大到小排序*/
return stu1.sum>stu2.sum;
return stu1.ID>stu2.ID; /*总分相等按照学号从大到小排序*/
}
};
int N,M,i,j; /*N为学生人数,M为课程数量*/
double score; /*临时变量*/
Student temp; /*临时变量*/
vector Stu; /*本课设采用动态数组vector,防止浪费内存空间*/
bool condition=true; /*系统运行状态*/
char choice; /*用于输入来选择功能*/
/*---------------------------------------------a.成绩录入---------------------------------------------*/
void InsertScore(){
coutN>>M;
cout |