编写一个程序,用户从键盘输入若干正整数,以-1为结束输入标记。计算并输出用户输入偶数的个数及所有数据的平均数
时间: 2024-02-22 17:57:27 浏览: 34
好的,这道题可以用Python编写程序解决。以下是代码:
```python
count = 0 # 偶数个数
total = 0 # 总和
n = 0 # 输入的数
while n != -1:
n = int(input("请输入一个正整数(输入-1结束):"))
if n % 2 == 0 and n != -1: # 判断是否为偶数
count += 1
if n != -1:
total += n
if count == 0: # 避免除数为0
print("您没有输入偶数")
else:
print("您输入的偶数个数为:", count)
print("所有数据的平均数为:", total / (count + 1)) # 加1是因为-1也被算在内了
```
运行程序后,您可以依次输入正整数,以-1作为结束标记,程序将会计算并输出您输入的偶数个数以及所有数据的平均数。注意,在输入非数字时程序会崩溃,需要输入正整数。
相关问题
编写一个程序,用户从键盘输入若干正整数,以-1为结束输入标记。计算并输出用户输入偶数的个数,及所有数据的平均数
可以使用循环来实现用户输入若干正整数并计算偶数的个数和所有数据的平均数,程序代码如下:
```c
#include<stdio.h>
int main(){
int num, sum = 0, count = 0;
printf("请输入若干正整数(以-1结束输入):\n");
scanf("%d", &num);
while(num != -1){
if(num % 2 == 0){
count++;
}
sum += num;
scanf("%d", &num);
}
printf("偶数的个数为:%d\n", count);
if(sum == 0){
printf("没有输入数据!\n");
}else{
double average = (double)sum / (count + (sum == 0 ? 1 : 0));
printf("所有数据的平均数为:%.2f\n", average);
}
return 0;
}
```
程序首先提示用户输入若干正整数,使用循环读取用户输入。在循环中,如果当前输入的数是偶数,计数器 `count` 就加1;累加器 `sum` 加上当前输入的数。当用户输入 -1 时,循环结束。最后,程序根据累加器 `sum` 的值来判断是否存在输入数据。如果 `sum` 的值为0,则没有输入数据;否则,计算所有数据的平均数并输出结果。需要注意的是,为了避免整型除法的问题,需要将累加和转换为 `double` 类型,再除以数据个数。
用户从键盘输入若干正整数,以-1为结束输入标记。计算并输出用户输入所有偶数的和
好的,让我来回答您的第一个问题。以下是计算所有输入偶数和的代码:
```
#include <stdio.h>
int main() {
int num, sum = 0;
printf("请输入若干正整数,以-1为结束输入标记\n");
scanf("%d", &num);
while (num != -1) {
if (num % 2 == 0) {
sum += num;
}
scanf("%d", &num);
}
printf("所有偶数的和为:%d", sum);
return 0;
}
```
您只需要输入若干正整数,以-1为结束输入标记,就可以计算出所有输入偶数的和了。