c - 打印使用 while 循环的正数、负数和所有条目
问题描述
所以我试图计算while循环中正负条目的平均值,但我似乎无法在控制台中输入任何类型的数字。所以我需要输入数字,只要它不为零,并添加正数和负数。我需要计算输入了多少正面和负面条目。我还需要打印正面和负面条目的平均值。
这是我的代码:
int num;
int positivenum = 0, negativenum = 0;
int cpositive = 0, cnegative = 0;
float average = 0;
printf("Enter a positive and negative integer:");
while (num!=0)
{
scanf("%d", &num);
if (num > 0){
positivenum += num;
cpositive++;
}
else if (num < 0){
negativenum += num;
cnegative++;
}
解决方案
这正是do while
明智的选择:
int num;
int positivenum = 0, negativenum = 0;
int cpositive = 0, cnegative = 0;
printf("Enter a positive and negative integer:");
do
{
scanf("%d", &num);
if (num > 0){
positivenum += num;
cpositive++;
}
else if (num < 0){
negativenum += num;
cnegative++;
}
} while (num!=0);
if (cpositive > 0)
printf("Average of positive numbers: %f\n", (double)positivenum / (double)cpositive);
if (cnegative > 0)
printf("Average of negative numbers: %f\n", (double)negativenum / (double)cnegative);
推荐阅读
- laravel - Laravel/Lumen:意外的'=>'
- reactjs - React + SVG:填充和描边没有正确着色
- sql - sql查询按年份获取最多的名称
- python - 我从朋友那里得到了一个 trio 输入函数,它正在尝试使用 trio.lowleve.FdStream,但是我找不到它
- github-pages - 使用 github-pages 部署的 svelte 应用程序首次显示空白页面
- python - 我在 FB 先知的情节模块中遇到错误
- c++ - C++ 菜单排序系统在输入 txt 文件时不接受多个单词
- puppeteer - Puppeteer 等待特定的控制台事件
- oracle - ora-65090:只允许在容器数据库中进行操作
- sql - 用于禁用/启用触发所有的 Postgresql 权限