输入若干个正整数,计算并输出这些正整数的平均值,且输入数据只用空格分隔,在C语言中如何实现
时间: 2023-05-24 10:07:19 浏览: 81
可以使用循环结构和累加器来实现。具体思路如下:
1. 定义一个计数器count和一个累加器sum,用来记录输入的正整数个数和累计总和
2. 使用while循环读入输入的每一个正整数,每读入一个正整数,计数器count加1,累加器sum加上该正整数
3. 当读入的正整数为0时,退出循环
4. 计算平均值,即sum/count
5. 输出平均值
具体代码如下:
```c
#include <stdio.h>
int main() {
int num, count = 0, sum = 0;
printf("请输入一些正整数(以0结束):\n");
while (1) {
scanf("%d", &num);
if (num == 0) {
break;
}
count++;
sum += num;
}
if (count == 0) {
printf("没有输入任何正整数\n");
} else {
double avg = (double)sum / count;
printf("平均值为:%.2f\n", avg);
}
return 0;
}
```
在代码中,使用了double类型来存储平均值,以保证精度。使用了%.2f格式控制符,保留两位小数输出。
相关问题
输入5个整数x,输出其中c语言正整数的累加和sum与正整数的平均值ave
好的,你可以使用下面的C语言代码来实现计算正整数的累加和与平均值。
```c
#include <stdio.h>
int main() {
int x[5], i, sum = 0, count = 0;
float ave;
printf("请输入5个整数:\n");
for (i = 0; i < 5; i++) {
scanf("%d", &x[i]);
if (x[i] > 0) { // 判断是否是正整数
sum += x[i];
count++;
}
}
ave = (float)sum / count;
printf("正整数的累加和为:%d\n", sum);
printf("正整数的平均值为:%.2f\n", ave);
return 0;
}
```
在这个代码中,我们首先定义了一个包含5个整数的数组`x`,以及`sum`、`count`和`ave`三个变量。然后通过循环输入这5个整数,并且判断它们是否是正整数。如果是正整数,则累加到`sum`中,并且`count`加1。最后,计算出正整数的平均值,并输出结果。
希望这个代码可以帮助到你!
c语言,输入十个整数,输出正整数的平均值和平均值的和
好的,这是一个关于C语言的问题。下面是程序的代码:
```c
#include <stdio.h>
int main()
{
int num, count = 0, sum = 0;
float avg;
printf("请输入十个整数:\n");
for(int i = 1; i <= 10; i++)
{
scanf("%d", &num);
if(num > 0)
{
count++;
sum += num;
}
}
avg = (float) sum / count;
printf("正整数的平均值为 %.2f,平均值的和为 %d\n", avg, sum);
return 0;
}
```
输入十个整数,程序会统计其中正整数的个数和总和。然后再计算出正整数的平均值和平均值的和,并输出结果。