用c代码编译:输入一位选手姓名和10位裁判打分,计算并输出选手的最后得分(去掉一个最高分和一个最低分后再取平均值,结果保留两位小数)。
时间: 2024-02-23 11:02:45 浏览: 46
好的,以下是用 C 语言编写的程序,可以实现您的需求:
```c
#include <stdio.h>
int main() {
char name[20]; // 定义姓名字符串
float scores[10]; // 定义分数数组
float sum = 0, max = 0, min = 10; // 初始化总分、最高分和最低分
// 输入选手姓名和10位裁判打分
printf("请输入选手的姓名和10位裁判打分(以空格分隔):\n");
scanf("%s", name);
for (int i = 0; i < 10; i++) {
scanf("%f", &scores[i]);
// 更新最高分和最低分
if (scores[i] > max) {
max = scores[i];
}
if (scores[i] < min) {
min = scores[i];
}
sum += scores[i]; // 累加总分
}
// 计算最后得分并输出
float final_score = (sum - max - min) / 8;
printf("%s 的最后得分为:%.2f\n", name, final_score);
return 0;
}
```
您可以将上述代码复制到 C 语言的开发环境中进行编译运行。程序会提示您输入选手的姓名和10位裁判打分,然后计算得到最后得分并输出。注意,程序中使用了一个 float 类型的数组来存储分数,这样可以方便地进行最高分和最低分的查找和更新。同时,为了保证结果的精确性,计算最后得分时使用了浮点数除法运算。