【发布时间】:2014-11-30 19:26:15
【问题描述】:
我想编写一个程序,它接受用户的输入并计算三角数。还应该有一个选项来询问用户是否要进行另一个输入或退出,并且需要使用 while 或 do...while 来完成。我编写了以下代码,但没有达到预期的效果:
#include <stdio.h>
int main(void)
{
int n, number, triangularNumber;
char s = 'Y';
while (s == 'Y') {
printf("What triangular number do you want? ");
scanf("%i", &number);
triangularNumber = 0;
for (n = 1; n <= number; ++n)
triangularNumber += n;
printf("Triangular number %i is %i\n\n", number, triangularNumber);
printf("Do you want to continue?\n");
scanf("%c", &s);
}
return 0;
}
上面的代码只执行一次,然后退出。如何根据我提供的输入让它再次运行循环?提前致谢。
【问题讨论】:
-
当用户按下
y时,它是否以小写形式出现?这可能是它在 1 个循环后爆炸的原因,如果是这样,你可以很容易地调试它