纯小白求大佬指教!
1条回答 默认 最新
- CSDN专家-link 2021-12-24 08:23关注
定义一个学生结构,再定义结构数组,用循环输入成绩的统计计算总成绩,再进行排序输出
#include <stdio.h> typedef struct _student { char name[20]; int score[3]; int sum; int avg; }student; int main() { student s[36],temp; int i,j,t; for(i=0;i<36;i++) { scanf("%s",s[i].name); s[i].sum = 0; for(j=0;j<3;j++) { scanf("%d",&s[i].score[j]); s[i].sum += s[i].score[j]; } s[i].avg = s[i].sum/3; } for(i=0;i<35;i++) for(j=0;j<35-i;j++) { if(s[j].sum < s[j+1].sum) { temp = s[j]; s[j] = s[j+1]; s[j+1] = temp; } } printf("%-10s%-25s%-10s%-10s%-10s%-10s%-10s\n","排序","姓名","课1","课2","课3","总分","平均分"); for(i=0;i<36;i++) { printf("%-10d%-25s",i+1,s[i].name); for(j=0;j<3;j++) printf("%-10d",s[i].score[j]); printf("%-10d%-10d\n",s[i].sum,s[i].avg); } return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报 编辑记录