给出一个循环的c代码,该循环计算并显示用户输入的数字和。循环应该提示用户输入,直到用户输入- 335,然后退出并显示最后的和。
这就是我所拥有的。为什么当我输入-335时它不打印(退出循环)?它总是让我输入一个数字。

#include <stdio.h>


int main(void)
{

int userNum;
printf("Please enter an integer:\n");
scanf("%d", &userNum);

while (userNum != -335){
    printf("Please enter an integer:\n");
    scanf("%d", &userNum);
    userNum += userNum;

}

printf("%d", userNum);


return 0;
}

最佳答案

您需要一个额外的变量来跟踪总和。您当前的方法一直覆盖它:
所以添加一行:

int userNum;
int sum = 0; // sum holds total variable

在这里添加和更改:
while (userNum != 335){
    printf("Please enter an integer:\n");
    scanf("%d", &userNum);
    sum += userNum;
}

 printf("%d", sum);

10-08 20:13