C语言校园歌手比赛评委打分项目

项目描述

高校团委组织校园歌手比赛,进入决赛的校园歌手有10位,歌手编号从1到10进行编号。组委会随机抽取方式产生了决赛次序为:3,1,9,10,2,7,5,8,4,6。

比赛现场有5个评委为参赛的10位决赛歌手打分,分数为0~10分。歌手最后得分为去掉1个最高分和1个最低分后,剩余的3个分数的平均值。计算输出10位歌手的得分。

输入格式

输入5个评委的评分

输出格式:

输出10位歌手的得分(保留小数点后两位)
printf(“%2d号歌手得分:%.2f\n”,/输出列表/);

输入样例:

9.0 9.1 9.5 9.6 8.8
9.3 9.2 9.6 9.4 9.0
8.9 9.4 9.7 9.3 9.0
9.4 9.2 9.6 9.9 9.8
9.6 9.0 9.5 9.3 9.6
8.8 9.4 9.2 9.7 9.2
9.1 9.5 9.5 9.3 9.3
9.3 9.2 9.6 9.4 9.0
9.7 9.1 9.5 9.4 9.5
9.5 9.2 9.6 9.2 9.5

输出样例:

1号歌手得分:9.30
2号歌手得分:9.47
3号歌手得分:9.20
4号歌手得分:9.47
5号歌手得分:9.37
6号歌手得分:9.40
7号歌手得分:9.27
8号歌手得分:9.30
9号歌手得分:9.23
10号歌手得分:9.60

项目代码

#include <stdio.h>
#include <stdlib.h>

#define NUM_SINGER 10    // 歌手数量
#define NUM_JUDGE 5     // 评委数量

int main()
{
    int i, j;
    float scores[NUM_SINGER][NUM_JUDGE];  // 存储评委打分
    float total_score;   // 总得分
    float max_score, min_score;   // 最高分和最低分
    float avg_score;     // 平均分

    // 输入评委打分
    for (i = 0; i < NUM_SINGER; i++) {
        printf("请输入第%d位歌手的评委打分:", i + 1);
        for (j = 0; j < NUM_JUDGE; j++) {
            scanf("%f", &scores[i][j]);
        }
    }

    // 计算每位歌手的得分
    for (i = 0; i < NUM_SINGER; i++) {
        max_score = scores[i][0];
        min_score = scores[i][0];
        total_score = 0;
        for (j = 0; j < NUM_JUDGE; j++) {
            // 找出最高分和最低分
            if (scores[i][j] > max_score) {
                max_score = scores[i][j];
            }
            if (scores[i][j] < min_score) {
                min_score = scores[i][j];
            }
            total_score += scores[i][j];
        }
        // 去掉最高分和最低分,求平均分
        total_score = total_score - max_score - min_score;
        avg_score = total_score / 3;
        printf("%2d号歌手得分:%.2f\n", i + 1, avg_score);
    }

    return 0;
}

程序首先定义了常量 NUM_SINGERNUM_JUDGE,分别表示歌手数量和评委数量。然后使用一个二维数组 scores 存储每个歌手的评委打分。接着,使用两个循环分别输入评委打分和计算每位歌手的得分。对于每位歌手,我们先找出最高分和最低分,然后去掉这两个分数,求剩余分数的平均值,即为该歌手的得分。最后,使用 printf 函数输出每位歌手的得分。

注意,在格式化字符串中,%2d 表示输出一个占据两个字符宽度的整数,如果实际的数字不足两位,则在前面补空格;%.2f 表示输出一个保留两位小数的浮点数。

© 版权声明
THE END
喜欢就支持一下吧
点赞8赞赏 分享