有人可以告诉我为什么输入的正确值没有被存储在这个程序中?简单的C程序没有存储变量中输入的正确值
#include <stdio.h>
#include <stdlib.h>
int main()
{
int num, sum=0;
printf("Enter the number: ");
while(num!=0)
{
sum = sum+num;
scanf("%d", &num);
}
printf("Answerr = %d", sum);
return 0;
}
下面是输出:
Enter the number: 2 0 Sum = 10
您需要阅读*之前*将其添加到'sum'。现在,'num'被使用未初始化。 sum = sum + num; scanf(“%d”,&num);' - >'scanf(“%d”,&num); sum = sum + num;' –
你还没有初始化'num',这就是为什么你有未定义的行为 –
也,不检查['scanf'](http://en.cppreference.com/w/c/io/fscanf)的返回值。 –