这里有一道C语言编程题求各位大神帮忙

某小组有5人,从键盘上分别输入他们的学号、姓名、成绩,输出最高者的信息及平均成绩。(1)运行要求输入:5人的学号、姓名、成绩,成绩允许小数输出:成绩最高的人的信息,成绩保... 某小组有5人,从键盘上分别输入他们的学号、姓名、成绩,输出最高者的信息及平均成绩。
(1)运行要求
输入:5人的学号、姓名、成绩,成绩允许小数
输出:成绩最高的人的信息,成绩保留2位小数
(2)程序测试
001 小红 89
002 小明 76
003 小力 87
004 小马 98
005 小亮 76 (输入数据)

004 小马 98.00 85.20 (期望的输出)

输出:成绩最好的为:004 小马 98.00平均成绩为:85.20
展开
 我来答
防御333
2017-12-19 · TA获得超过5890个赞
知道大有可为答主
回答量:2348
采纳率:85%
帮助的人:1997万
展开全部
#include <stdio.h>

struct Student
{
char ID[5];
char Name[10];
float Score;
}stu[5], max_score;

int main()
{
float sum = 0, ave = 0;            //定义两个变量,为了计算平均成绩
                                   //变量的意思:总成绩,平均成绩

for (int i = 0; i < 5; i++)
{
scanf("%s %s %f", stu[i].ID, 5, stu[i].Name, 10, &stu[i].Score);
sum += stu[i].Score;        //输入的同时,计算总成绩
}

ave = sum / 5;                      //平均成绩为总成绩 除以 5

max_score = stu[0];                 //初始化存放成绩最好的同学结构体变量
for (int i = 1; i < 5; i++)
{
if (max_score.Score < stu[i].Score)
{
max_score = stu[i]; //遍历,搜索成绩最好的同学,并存在结构体变量里
}
}

printf("成绩最好的为:%s %s %.2f平均成绩为:%.2f\n", max_score.ID, max_score.Name, max_score.Score, ave);

return 0;
}

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式