1.某选秀节目有十个评委,选手的得分为十个评委评分后的平均分,试编程实现评分功能,即输入评委给出的10个分数,输出平均分。(分别用while、do while实现)用C语言并且带有程序分析
时间: 2024-02-13 17:02:13 浏览: 125
输入四个人五门成绩的得分。。然后求每个人的平均成绩和每门课的平均成绩的C语言程序。。
以下是使用 while 循环实现的程序:
```c
#include <stdio.h>
int main() {
int scores[10];
int i = 0;
float sum = 0;
while (i < 10) {
printf("请输入第 %d 个评委的分数:", i+1);
scanf("%d", &scores[i]);
sum += scores[i];
i++;
}
float average = sum / 10;
printf("选手的平均分数为:%.2f", average);
return 0;
}
```
程序分析:
1. 定义一个包含 10 个元素的整型数组 `scores`,用于存储每个评委的分数;
2. 定义一个变量 `i`,用于记录当前输入的评委分数的下标;
3. 定义一个变量 `sum`,用于记录所有评委分数的总和;
4. 使用 while 循环,当 `i < 10` 时,循环执行以下操作:
1. 提示用户输入第 `i+1` 个评委的分数;
2. 使用 `scanf` 函数读取用户输入的整数,并存储到 `scores[i]` 中;
3. 将 `scores[i]` 的值累加到 `sum` 中;
4. 将 `i` 的值加 1,以便下一次输入下一个评委的分数;
5. 计算平均分数,即将 `sum` 除以评委的数量 10,得到平均分数 `average`;
6. 使用 `printf` 函数输出平均分数。
以下是使用 do while 循环实现的程序:
```c
#include <stdio.h>
int main() {
int scores[10];
int i = 0;
float sum = 0;
do {
printf("请输入第 %d 个评委的分数:", i+1);
scanf("%d", &scores[i]);
sum += scores[i];
i++;
} while (i < 10);
float average = sum / 10;
printf("选手的平均分数为:%.2f", average);
return 0;
}
```
程序分析:
与使用 while 循环实现的程序类似,只是将 while 循环改为 do while 循环。这样做的好处是,可以先执行一次循环体中的语句,再判断循环条件是否满足。因此,在使用 do while 循环时,保证循环体至少被执行一次。
阅读全文