用c语言。从键盘输入若干自然数,直到输入-1为止,输出大于平均数数据的个数。
时间: 2024-11-12 08:40:31 浏览: 4
在C语言中,你可以通过以下几个步骤实现这个功能:
1. 首先,创建一个变量来存储所有输入的数字的总和,以及一个变量来计算输入数字的数量。
2. 使用`while`循环,从用户那里获取输入,如果输入的是-1,则跳出循环。否则,将当前输入的数字累加到总数,并增加计数器。
3. 循环结束后,计算平均数,即总数除以计数器。
4. 再次使用`while`循环,遍历输入的所有数字,检查每个数字是否大于平均数。如果是,就增加一个计数器,表示大于平均数的数据个数。
5. 最后,打印出大于平均数的数据个数。
下面是简化版的代码示例:
```c
#include <stdio.h>
#include <math.h>
int main() {
int num, sum = 0, count = 0, i;
printf("请输入自然数(-1结束): ");
while (scanf("%d", &num) == 1 && num != -1) {
sum += num;
count++;
}
float average = (float)sum / count; // 计算平均数
i = count; // 初始化计数器,用于再次遍历
while (i--) { // 从后向前遍历,因为数组下标从0开始
if (arr[i] > average) { // 假设arr是你之前存储所有输入数字的数组
++count_of_greater_numbers;
}
}
printf("大于平均数的数据个数: %d\n", count_of_greater_numbers);
return 0;
}
```
阅读全文