2. (C语言程序题) 计算平均值:输入若干个正整数,计算并输出这些正整数的平均值,结果保留2位小数。 Sample Input(输入样式): 20 30 10 25 -1 Sample Output(输出样式): 21.25
时间: 2023-05-26 13:03:52 浏览: 57
```c
#include <stdio.h>
int main()
{
int num, sum = 0, count = 0; // num为输入的数字,sum为数字总和,count为数字个数
scanf("%d", &num);
while(num != -1)
{
sum += num;
count++;
scanf("%d", &num);
}
double average = (double)sum / count; // 计算平均值
printf("%.2lf", average); // 保留两位小数输出
return 0;
}
```
相关问题
(C语言程序题) 计算平均值:输入若干个正整数,计算并输出这些正整数的平均值,结果保留2位小数。 Sample Input(输入样式): 20 30 10 25 -1 Sample Output(输出样式): 21.25
```c
#include<stdio.h>
int main(){
int num,sum=0,count=0;
scanf("%d",&num);
while(num!=-1){
sum+=num;
count++;
scanf("%d",&num);
}
if(count!=0){
double avg=(double)sum/count;
printf("%.2lf",avg);
}else{
printf("0.00");
}
return 0;
}
```
输入若干个正整数,计算并输出这些正整数的平均值,且输入数据只用空格分隔,在C语言中如何实现
可以使用循环结构和累加器来实现。具体思路如下:
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格式控制符,保留两位小数输出。