选手得分系统无法正常输出数组

CSDN问答 2021-12-30 05:37:06 阅读数:589

系统 无法 得分 选手 分系统

输入难度系数3.2
评分输入5点0再输入5.5输出的数组异常

#include <stdio.h>void main() { float a[7]; int i, j, t; float dif = 0; printf("请输入该选手动作难度:"); scanf("%f", &dif); for (i = 0; i < 7; i++) { printf("请输入第%d个评委的评分:",i+1); scanf("%f", &a[i]); } for (i = 0; i < 7; i++) { for (j = i + 1; j <= 6; j++) { if (a[i] > a[j]) { t = a[i]; a[i] = a[j]; a[j] = t; } } } printf("%.2f %.2f %.2f %.2f %.2f %.2f %.2f", a[0], a[1], a[2], a[3], a[4], a[5], a[6]); printf("该选手总得分为:%.2f", (float)(a[2] + a[3] + a[4])*dif);}



采纳答案:

修改见注释处,供参考:

#include <stdio.h>void main(){ float a[7]; int i, j; // t; float dif = 0, t; printf("请输入该选手动作难度:"); scanf("%f", &dif); for (i = 0; i < 7; i++) { printf("请输入第%d个评委的评分:", i + 1); scanf("%f", &a[i]); } for (i = 0; i < 6; i++) //for (i = 0; i < 7; i++) { for (j = i + 1; j <= 6; j++) { if (a[i] > a[j]) { t = a[i]; a[i] = a[j]; a[j] = t; } } } printf("%.2f %.2f %.2f %.2f %.2f %.2f %.2f", a[0], a[1], a[2], a[3], a[4], a[5], a[6]); printf("该选手总得分为:%.2f", (float)(a[2] + a[3] + a[4]) * dif);}


其他答案2:

排序帮你改了下

img

#include <stdio.h>void main() { float a[7]; int i, j; float dif = 0,t; printf("请输入该选手动作难度:"); scanf("%f", &dif); for (i = 0; i < 7; i++) { printf("请输入第%d个评委的评分:",i+1); scanf("%f", &a[i]); } for (i = 0; i < 7-1; i++) { for (j = 0; j <7-1-i; j++) { if (a[j] > a[j+1]) { t = a[j]; a[j] = a[j+1]; a[j+1] = t; } } } printf("%.2f %.2f %.2f %.2f %.2f %.2f %.2f\n", a[0], a[1], a[2], a[3], a[4], a[5], a[6]); printf("该选手总得分为:%.2f", (float)(a[2] + a[3] + a[4])*dif);}
版权声明:本文为[CSDN问答]所创,转载请带上原文链接,感谢。 https://ask.csdn.net/questions/7616754