用结构体解决下列问题:从键盘输入5个学生的信息,每个学生信息包括学号、姓名、3门课的成绩,然后计算每个学生的总分,输出总分最高的学生的信息。
输入
只有一组数据,共5行。每行输入5个数据,分别是:学号(5位),姓名(英文名,长度不超过10个字符),3门课的成绩(大于等于0的整数)。
输出
只有一行,输出总分最高的学生的信息,包括:学号,姓名,三门课成绩,总成绩。数据之间用“,”隔开。
难度
简单
输入示例
00001 ali 89 87 65
00002 baidu 78 76 75
00003 tencent 90 90 90
00004 wanda 67 65 64
00005 geli 77 76 78
输出示例
00003,tencent,90,90,90,270
结构体c语言问题成绩
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
hello_world&& 2022-11-28 10:12关注#include<stdio.h> struct student{ char num[8]; char name[100]; int score[3]; int sum; }; int main() { int i; struct student stu[5]; for(i=0;i<5;i++) { scanf("%s %s %d %d %d",stu[i].num,stu[i].name,&stu[i].score[0],&stu[i].score[1],&stu[i].score[2]); stu[i].sum=stu[i].score[0]+stu[i].score[1]+stu[i].score[2]; } int max=stu[0].sum; int loc=0; for(i=1;i<5;i++) { if(stu[i].sum>max) { max=stu[i].sum; loc=i; } } printf("%s %s %d %d %d %d",stu[loc].num,stu[loc].name,stu[loc].score[0],stu[loc].score[1],stu[loc].score[2],stu[loc].sum); return 0; }本回答被题主选为最佳回答 , 对您是否有帮助呢?评论 打赏 举报解决 1无用