【问题描述】
学生的记录由姓名和成绩组成,在主函数中循环输入4名学生的数据并用结构体数组存储,请编写函数计算返回平均分输出,并把高于等于平均分的学生数据输出。
要求:
使用结构体:
struct Student
{
char name[10];
int score;
};
使用子函数:
float StructAvg(struct Student stu[],int n)
【输入形式】
依次输入4名学生的姓名和分数
【输出形式】
把高于等于平均分的学生数据输出
【样例输入】
KOBE 90
YAO 90
HC 80
JAMES 70
【样例输出】
Avg=82.5
KOBE 90
YAO 90
#include<stdio.h>
str#uct Student
{
char name[10];
int score;
};
void StructSort(struct Student stu[],int n)
{
int h,j;
float k;
struct Student t;
k=(stu[0].score+stu[1].score+stu[2].score+stu[3].score)/4.0;
printf("Avg=%.1f\n",k);
for(j=0;j<n;j++)
{
if(stu[j].score>=k)
{
printf("%s %d\n",stu[j].name,stu[j].score);
}
}
}
int main()
{
struct Student chen[4];
int i,j;
for(i=0;i<4;i++)
{
scanf("%s %d",chen[i].name,&chen[i].score);
}
StructSort(chen,4);
}