jjvcjkm 2021-07-03 16:23 采纳率: 100%
浏览 16
已采纳

问什么输出的最高分和最低分不正确

#include <stdio.h>
#define N 5
int main(){
double score[N],sum=0.0,avg=0.0;
for(int i = 0 ; i<N ;i++){
printf("第%d位评委的分数:\n",i+1);
scanf("%lf",&score[i]);
sum+=score[i];
}
int max = 0,min = 0;
for(int j = 1; j<N ; j++){
if(score[max] < score[j]){
max = j;
}
if(score[min] > score[j]){
min = j;
}
}

avg = (sum-score[max]-score[min])/(N-2);
printf("去掉最高分和最低分的成绩:%lf",avg);
printf("最高分成绩:%d\n",max);
printf("最低分成绩:%d\n",mix);

}

  • 写回答

2条回答 默认 最新

  • qzjhjxj 2021-07-03 16:54
    关注

    供参考:

    #include <stdio.h>
    #define N 5
    int main()
    {
        double score[N],sum=0.0,avg=0.0;
        for(int i = 0 ; i<N ;i++){
               printf("第%d位评委的分数:\n",i+1);
               scanf("%lf",&score[i]);
               sum+=score[i];
        }
        double max = score[0] , min = score[0];
        for(int j = 1; j<N ; j++){
                if(max < score[j]){
                    max = score[j];
                }
                if(min > score[j]){
                    min = score[j];
                }
        }
    
        avg = (sum- max - min)/(N-2);
        printf("去掉最高分和最低分的成绩:%lf\n",avg);
        printf("最高分成绩:%.2f\n",max);
        printf("最低分成绩:%.2f\n",min);
        
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?