用c语言写出一个歌手大赛的评分系统
时间: 2024-03-20 07:41:17 浏览: 107
以下是一个简单的使用C语言编写的歌手大赛评分系统的代码示例。这个评分系统包括一个简单的系统进入界面和完成界面,使用了循环、数组和条件语句。
```c
#include <stdio.h>
// 定义评分系统参数
#define MAX_SCORE 10 // 最高分
#define MIN_SCORE 0 // 最低分
#define JUDGE_NUM 5 // 评委数量
#define DEDUCT_SCORE 2 // 扣分项
int main() {
// 定义歌手得分数组
float singer_scores[5];
// 进入系统界面
printf("欢迎使用歌手大赛评分系统!\n");
printf("------------------------\n");
// 循环输入每个歌手的得分
for (int i = 0; i < 5; i++) {
printf("请输入第 %d 个歌手的得分:\n", i+1);
float scores[JUDGE_NUM];
for (int j = 0; j < JUDGE_NUM; j++) {
printf("请输入第 %d 个评委的分数:", j+1);
scanf("%f", &scores[j]);
}
// 计算总分
float total_score = 0;
for (int j = 0; j < JUDGE_NUM; j++) {
total_score += scores[j];
}
// 扣分项
if (min(scores, JUDGE_NUM) < DEDUCT_SCORE) {
total_score -= DEDUCT_SCORE;
}
// 计算平均分
float avg_score = total_score / JUDGE_NUM;
// 限制分数范围
avg_score = max(min(avg_score, MAX_SCORE), MIN_SCORE);
singer_scores[i] = avg_score;
}
// 完成评分,输出每个歌手的得分
printf("------------------------\n");
printf("评分完成!每个歌手的得分如下:\n");
for (int i = 0; i < 5; i++) {
printf("歌手 %d 的得分为:%.2f\n", i+1, singer_scores[i]);
}
printf("------------------------\n");
printf("感谢使用歌手大赛评分系统!\n");
return 0;
}
```
这个评分系统中,使用了两个printf语句作为系统进入和完成界面,然后使用循环和嵌套循环输入每个歌手的得分,计算每个歌手的平均得分,并对得分进行限制,最终输出每个歌手的得分。
阅读全文