007年《C语言程序设计》实验报告题目

来源:百度知道 编辑:UC知道 时间:2024/05/30 01:52:52
已知N个学生的学号、姓名和4门功课的成绩,计算:

(1) 每个学生的总分、平均分。

(2) 按总分从大到小排序,同时调整学号、姓名、4门功课成绩和平均分;输出经排序后全部学生的成绩单。

(3) 任意输入一个学生的学号,输出该学生的成绩单。

注:每一小题用一个函数完成。

#include <stdio.h>
#include <string.h>

#define N 3//学生数目

typedef struct /*定义结构体数组*/
{
char num[20]; /*学号*/
char name[20]; /*姓名*/
float score[4]; /*成绩*/
float total;//总分
float average;//平均分
} Student;

Student stu[N];

//输入学生信息
void input()
{
int i,j;

printf("请输入%d个学生的信息:\n",N);
for(i=0;i<N;i++)
{
printf("学号:");
scanf("%s",stu[i].num);
printf("姓名:");
scanf("%s",stu[i].name);
for(j=0;j<4;j++)
{
printf("科目%d的成绩:",j+1);
scanf("%f",&stu[i].score[j]);
}
}
}

//输出学生信息
void output(int i)
{
int j;

printf("学生的信息如下:\n");
printf("学号:%s\n",stu[i].num);
printf("姓名:%s\n",stu[i].name);
for(j=0;j<4;j++)