某歌手大赛,共有10个评委给歌手打分,分数采用百分制,去掉一个最高分,去掉一个最低分,然后取平均分,得到歌手的成绩,10个分数由键盘输入,编写程序计算某歌手的成绩。用C语言代码写
时间: 2024-05-23 12:09:34 浏览: 263
#include <stdio.h>
int main() {
int scores[10]; // 存储10个评委的分数
int max = 0, min = 100; // 初始化最高分和最低分
int sum = 0, avg; // 初始化总分和平均分
// 从键盘输入10个分数
printf("请输入10个评委的分数(百分制):\n");
for (int i = 0; i < 10; i++) {
scanf("%d", &scores[i]);
// 更新最高分和最低分
if (scores[i] > max) {
max = scores[i];
}
if (scores[i] < min) {
min = scores[i];
}
// 累加总分
sum += scores[i];
}
// 计算平均分
avg = (sum - max - min) / 8;
// 输出结果
printf("该歌手的成绩是:%d\n", avg);
return 0;
}
相关问题
c++在歌手大奖赛中有10名评委打分,分数采用百分制,歌手的最后得分是:从10位评委的评分中,去掉一个最高分去掉一个最低分, 统计其总分,并除以8,试编程计算一个歌手的最后得分
以下是一个 C++ 的程序示例:
```cpp
#include <iostream>
#include <algorithm> // 包含 sort() 函数
using namespace std;
int main() {
const int n = 10; // 评委人数
int scores[n]; // 存储评分
int sum = 0; // 总分
int maxScore = 0; // 最高分
int minScore = 100; // 最低分
// 输入评分
for (int i = 0; i < n; i++) {
cin >> scores[i];
sum += scores[i];
maxScore = max(maxScore, scores[i]); // 更新最高分
minScore = min(minScore, scores[i]); // 更新最低分
}
// 去掉最高分和最低分
sum = sum - maxScore - minScore;
// 计算最终得分并输出
double finalScore = sum / 8.0;
cout << "最终得分:" << finalScore << endl;
return 0;
}
```
程序中使用了 `sort()` 函数来排序评分并计算最高分和最低分。另外,计算最终得分时需要将总分转换为浮点数,否则会得到整数除法的结果。
c++解答:在歌手大奖赛中有10名评委打分,分数采用百分制,歌手的最后得分是:从10位评委的评分中,去掉一个最高分去掉一个最低分,统计其总分,并除以8,试编程计算一个歌手的最后得分。
以下是使用 C++ 语言实现的代码:
```cpp
#include <iostream>
#include <algorithm>
using namespace std;
int main() {
int scores[10];
int total = 0;
cout << "请输入10位评委的评分:" << endl;
// 输入10位评委的评分
for (int i = 0; i < 10; i++) {
cin >> scores[i];
}
// 去掉一个最高分和一个最低分
sort(scores, scores + 10);
for (int i = 1; i < 9; i++) {
total += scores[i];
}
// 统计总分并输出得分
double final_score = total / 8.0;
cout << "歌手的最终得分为:" << final_score << endl;
return 0;
}
```
在上面的代码中,我们首先定义一个包含10个元素的整型数组来保存评委的评分。然后,使用for循环输入10位评委的评分。接着,使用sort函数将评分从小到大排序,并去掉一个最高分和一个最低分。最后,统计总分并除以8,输出得分即可。
注意:这个程序假设输入的评分都是合法的,没有进行错误处理。
阅读全文