【发布时间】:2015-02-11 21:56:29
【问题描述】:
我正在尝试编写一个程序来计算用户提供的三角数。当我运行它时,它卡在 for 循环中,但仍会打印出正确的答案,因为我的 print 语句在循环之外。任何帮助是极大的赞赏。我的代码如下:
#include <stdio.h>
int main (void)
{
//Declare your variables
int triangle, triNumber, i;
//Assign values for known variables
triNumber = 0;
//Get the user to input the triangular number that they want
printf("Please enter the triangular number you would like: ");
scanf("%i\n", &triangle);
//Execute for loop that will calculate the triangular number
for (i = 1; i <= triangle; i = i + 1)
{
triNumber = triNumber + 1;
}
//Display the user's triangular number
printf("The triangular number is %i\n", triNumber);
return 0;
}
【问题讨论】:
-
如果你看到结果,你的程序并没有陷入循环。 Q.E.D.
-
如果它卡在循环中并且打印在循环之外,它如何打印正确的答案?
-
在 C 中不要使用循环
i = 1; i <= triangle而是i = 0; i < triangle。从1开始的表格迟早会回击你。 -
这不计算三角数...它设置
triNumber = triangle。
标签: c for-loop infinite-loop