请哪位高手帮我做做这个题?

来源:百度知道 编辑:UC知道 时间:2024/06/13 03:54:28
学生成绩管理系统
任务:用c语言编写一个简单的学生信息管理程序,能实现对学生信息的简单管理。
要求:建立一个4个学生的信息登记表,每个学生的信息包括:学号,姓名,和3门课程的成绩(FOX,C,ENGLISH)。
程序运行时显示一个简单的菜单,例如:
(1):信息输入(INPUT)
(2):总分统计(COUNT)
(3):总分排序(SORT)
(4):查询(QUERY)
其中:
(1):对4个学生的信息进行输入;
(2):对每个学生的3门课程统计总分;
(3):对4个学生的总分按降序排序并显示出来;
(4):查询输入一个学号后,显示出该学生的有关信息

这是我的作业,跟你这道题挺相似的,不过有20个学生,五门成绩,你改一下应该就差不多了

#include "stdio.h"

struct student /*定义表示学生信息的结构体类型student*/
{
int num; /*学号*/
char name[10]; /*姓名*/
int grade[5]; /*五门课程的成绩*/
int sum; /*总分*/
};

void input(struct student *a, int n) /*输入学生信息的函数,以一个student类型的数组和一个整形变量为形参*/
{
int k; /*计数变量*/
printf("Please input student's number, name and five grades.\n"); /*提示行*/
for(k=0; k<n; k++) /*赋值*/
scanf("%d%s%d%d%d%d%d", &a[k].num, a[k].name, &a[k].grade[0], &a[k].grade[1],
&a[k].grade[2], &a[k].grade[3], &a[k].grade[4]);
}

void sum(struct student *a, int n) /*求五科成绩之和的函数*/
{
int k;
for(k=0; k<n; k++)
a[k].sum=a[k].grade[0]+a[k].grade[1]+a[k].grade[2]+a[k].grade[3]+a[k].grade[4];
}

void change(struct student *a, int n) /*按照总成绩排序的函数*/
{
int i, k;
struct student temp; /*暂时的存储变量