c语言歌手大赛n个评委打分在一行分别输出得分,最低分,最高分。 两个数中间用一个空格分开。 得分四舍五入保留整数部分,最低分和最高分保留一位小数。
时间: 2024-05-06 08:14:49 浏览: 89
以下是一个简单的C语言程序,可以实现你的需求:
```c
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#define MAX_N 100
int main()
{
int n;
double score[MAX_N], min_score, max_score, sum = 0;
// 输入评委人数
printf("请输入评委人数:");
scanf("%d", &n);
// 输入分数
printf("请输入评分:");
for(int i = 0; i < n; i++)
{
scanf("%lf", &score[i]);
sum += score[i];
}
// 计算平均分、最低分和最高分
double avg_score = round(sum / n);
min_score = max_score = score[0];
for(int i = 1; i < n; i++)
{
if(score[i] < min_score) min_score = score[i];
if(score[i] > max_score) max_score = score[i];
}
// 输出结果
printf("平均分:%d 最低分:%.1f 最高分:%.1f\n", (int)avg_score, min_score, max_score);
return 0;
}
```
程序的运行过程如下:
```
请输入评委人数:5
请输入评分:8.2 9.1 7.8 8.5 8.9
平均分:8 最低分:7.8 最高分:9.1
```
需要注意的是,这里使用了 `round()` 函数来对平均分进行四舍五入。此外,为了方便,我们假设评委人数不超过100。如果需要支持更多的评委人数,可以将 `score` 数组定义为动态数组。
阅读全文