【发布时间】:2020-10-15 09:47:19
【问题描述】:
以下是问题、我的代码和我的问题:
不要使用数组来保存用户在本练习中输入的数字!编写一个程序,计算用户输入的正数的平均值。程序要求用户输入数字,并在用户输入 0 作为数字时计算输入数字的平均值。零不包括在平均值中。如果用户输入负数,程序必须打印一条消息,告知只接受正数并忽略负数。
大部分代码如下:
#pragma warning (disable:4996)
#include <stdio.h>
int main() {
int number;
int sum = 0;
printf("Please enter the 1st number or 0 to stop: ");
scanf("%d", &number);
int count = 0;
while (number != 0)
{
sum = sum + number;
count++;
printf("Please enter another number or 0 to stop: ");
scanf("%d", &number);
}
if (count < 0) {
printf("Only positive numbers\n");
}
if (count > 0)
{
printf("AVERAGE = %f", ((float)sum) / count);
}
}
具体问题: 如果用户输入负数,如何不让它影响平均值,提示用户输入正数?
【问题讨论】:
-
任务要求您检查用户输入 (
number) 是否为负数,而不是用户输入内容的次数 (count) -
Marcos,很好奇,任何原因代码使用
((float)sum) / count与((double)sum) / count?请注意,当传递给printf()时,商会转换为double。
标签: c