//报错:答案错误
//谁能告诉我那错了,输出格式也是严格按照他的要求,连多余的空格都清除了
#include <stdio.h>
#include <string.h>
#define num_course 3
typedef struct {
char num[10];
char name[10];
int grade[3];
} Student;
int main()
{
int N,i,j,sum[num_course] = {0,0,0},max = 0,std_grade[100]={0};
//sum[num_course]:每门课学生的总成绩;
//std_grade[100]:每个学成所有课的总成绩
Student std[10];
scanf("%d",&N);
for(i=0;i<N;i++)
{
scanf("%s%s",&std[i].num,&std[i].name);
for(j=0;j<num_course;j++)
{
scanf("%d",&std[i].grade[j]);
}
}
//求每门课学生的总成绩
for(j=0;j<num_course;j++)
{
for(i=0;i<N;i++)
{
sum[j] += std[i].grade[j];
}
}
//求每个学成的总成绩
for(i=0;i<N;i++)
{
for(j=0;j<num_course;j++)
{
std_grade[i] += std[i].grade[j];
}
}
for(i=0;i<N-1;i++)
{
if(std_grade[i]<std_grade[i+1])
max = i+1;
}
//输出三门课程的平均成绩
for(j=0;j<num_course;j++)
{
printf("%d ",sum[j]/N);
}
printf("%c",8); //去除最后一个空格
//输出最高分学生的信息
printf("\n%s %s ",std[max].num,std[max].name);
for(j=0;j<num_course;j++)
{
printf("%d ",std[max].grade[j]);
}
printf("%c",8);
}0.0分
0 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复