输入变量直到输入负数

时间:2014-09-16 06:27:13

标签: c loops variables input

我正在尝试在C中找出一个家庭作业。指令说明用户在循环中输入整数,直到它们输入负数,然后输出所有数字的总和。第二部分对我来说似乎很直接,但我无法绕过第一部分。如何使用循环存储用户输入整数?

到目前为止,这就是我所拥有的一切。

int main(void)
{
      int i = -1;
      while(i > -1)
      {
          printf("Please enter a number %i. When finished, enter a negative number.", i);
          scanf("%i", &i);
      }
      return 0;
}

2 个答案:

答案 0 :(得分:2)

int main(void)
{
    int i = 0,sum = 0;
    do
    {
       sum +=i;  // use sum here if you don't want to add -ve value
       printf("Please enter a number i. When finished, enter a negative number. ");
       scanf("%i",&i);
       //sum +=i;  // use sum here if you want to add -ve value also to the sum
    }
    while(i > -1);

    printf("Sum = %d", sum);
    return 0;
}

答案 1 :(得分:2)

您已分配i = -1并检查i是否大于-1,这是假的。所以,循环没有执行。
你可以试试这个。

#include<stdio.h>    
int main()    
{    
    int i=0,sum=0;    
    while(true)    
    {   
        scanf("%d",&i);
        if(i < 0) break;
        sum+=i;    
    }     
    printf("%d\n",sum);     

   return 0;    
}