gpt4 book ai didi

c - 输入后程序挂起

转载 作者:太空宇宙 更新时间:2023-11-04 02:46:52 24 4
gpt4 key购买 nike

该程序应该读取输入的数字并确定它们是偶数还是奇数。然后它需要显示奇数和偶数,以及输入数字的平均值。输入 0 时停止。

我的问题是它只是在输入第一个数字后挂起。

#include "stdio.h"
int main(void)
{
int oddcount = 0, evencount = 0; /* Count of even and odd numbers. */
int number;
float avge = 0, avgo = 0; /* Average for even and odd numbers. */
int evennum = 0, oddnum = 0;

printf("Enter a number or enter 0 to stop: ");
scanf_s("%i", &number);
while(number != 0)
{
if(number % 2 == 0)
{ evencount = evencount + 1;
evennum += number; }
else
{ oddcount = oddcount + 1;
oddnum += number; }
}

if(oddnum != 0)
avgo = oddnum / oddcount; /* Finding the odd average. */

if(evennum != 0)
avge = evennum / evencount; /* Finding the even average. */

printf("Here is the count odd %i and even %i numbers.\n", oddcount, evencount);
printf("And their averages %f odd and %f even.\n", avgo, avge);

return 0;
}

最佳答案

您不会在第一个数字之后阅读新数字。尝试类似的东西

while( scanf("%d", &number) == 1 && number != 0){
//Count evens and odds
}

另一种处理方法是在 while 循环的末尾添加另一个 scanf

关于c - 输入后程序挂起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26443664/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com