要求:输入一个班25名学生的C语言成绩(整数),求它们的平均分,最高分,最低分,并输出。把成绩按从高到低输出。
5条回答 默认 最新
关注有问题可以提哈,给你运行出来了


#include <stdio.h> #include <stdlib.h> #define N 25 /*提示用户的输入25个数,找到最大值,找到最小值,计算平均值*/ int main() { int i; int max; int min; int total=0; float average; //1.定义一个25个整型数的数组 int scores[25]={0}; //2.初始化数组 for(i=0;i<25;i++) { //2.1提示用户输入第多少个数 printf("请输入第%d个分数: ",i+1);//0+1=1 //2.2获取用户的输入scanf scanf("%d",&scores[i]); if(scores[i]>100 || scores[i]<0) { printf("没有这种分数\n"); printf("强制退出\n"); system("pause"); exit(-1); } } for(i=0;i<25;i++) { printf("第%d个分数是:%d\n",i+1,scores[i]); } //3.找分数,找最高分 max=scores[0];//让max等于数组的第0项, for(i=0;i<25;i++) { if(max<scores[i]) { max=scores[i]; } } printf("最高分是:%d\n",max); //4.找最低分 min=scores[0];//让min等于数组的第0项, for(i=0;i<25;i++) { if(min>scores[i]) { min=scores[i]; } } printf("最低分是:%d\n",min); //5.计算平均值 //5.1算出总分 for(i=0;i<25;i++) { total+=scores[i]; //total=total+datas[i] } //5.2求平均值 average=(float)total/25; //6.输出结果 printf("平均分是:%f\n",average); fac(scores); for(i=0; i<N; i++) printf("%4d",scores[i]); system("pause"); return 0; } int fac(int ans[]) { int i,j,t; for(i=0; i<N-1; i++) for(j=0; j<N-1-i; j++) if(ans[j]>ans[j+1]) { t=ans[i]; ans[j]=ans[j+1]; ans[j+1]=t; } }实现的步骤
本回答被题主选为最佳回答 , 对您是否有帮助呢?评论 打赏 举报 编辑记录解决 1无用