问题解决的话,请点采纳
// Q1073621.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include <stdio.h>
void swap(int * a, int * b)
{
int t = *a;
*a = *b;
*b = t;
}
int main()
{
int score[3][5];
char names[3][100];
int max[3];
int min[3];
double avg[3];
int order[3];
for (int i = 0; i < 3; i++)
{
printf("请输入第%d位选手姓名:", i + 1);
scanf("%s", &names[i][0]);
for (int j = 0; j < 5; j++)
{
printf("请输入第%d位评委对第%d位选手的打分:", j + 1, i + 1);
scanf("%d", &score[i][j]);
}
order[i] = i;
int sum = score[i][0];
max[i] = min[i] = sum;
for (int j = 1; j < 5; j++)
{
sum += score[i][j];
if (max[i] < score[i][j]) max[i] = score[i][j];
if (min[i] > score[i][j]) min[i] = score[i][j];
}
avg[i] = (sum - max[i] - min[i]) / 3.0;
}
if (avg[order[0]] < avg[order[1]])
{
swap(&order[0], &order[1]);
}
if (avg[order[1]] < avg[order[2]])
{
swap(&order[1], &order[2]);
}
if (avg[order[0]] < avg[order[1]])
{
swap(&order[0], &order[1]);
}
printf("No\tname\tavg\tmax\tmin\n");
for (int i = 0; i < 3; i++)
{
int j = order[i];
printf("No.%d\t%s\t%.2lf\t%d\t%d\t\n", i + 1, names[j], avg[j], max[j], min[j]);
}
return 0;
}
请输入第1位选手姓名:a
请输入第1位评委对第1位选手的打分:100
请输入第2位评委对第1位选手的打分:92
请输入第3位评委对第1位选手的打分:87
请输入第4位评委对第1位选手的打分:91
请输入第5位评委对第1位选手的打分:99
请输入第2位选手姓名:b
请输入第1位评委对第2位选手的打分:72
请输入第2位评委对第2位选手的打分:64
请输入第3位评委对第2位选手的打分:100
请输入第4位评委对第2位选手的打分:100
请输入第5位评委对第2位选手的打分:55
请输入第3位选手姓名:c
请输入第1位评委对第3位选手的打分:79
请输入第2位评委对第3位选手的打分:83
请输入第3位评委对第3位选手的打分:91
请输入第4位评委对第3位选手的打分:91
请输入第5位评委对第3位选手的打分:98
No name avg max min
No.1 a 94.00 100 87
No.2 c 88.33 98 79
No.3 b 78.67 100 55
Press any key to continue . . .