试图让这个循环工作?

时间:2013-01-22 02:47:48

标签: c for-loop

我刚开始学习C所以答案可能非常明显但是当我运行这段代码时,数字0只是在无限循环中重复。我正在尝试将x从0打印到1,增量为.05。

#include <stdio.h>
int main()
{
double x;


for( x = 0; x <= 1; x+.05 )
{

   printf("%d\n", x );
}
}

4 个答案:

答案 0 :(得分:6)

for( x = 0; x <= 1; x += .05 )

好像你没有把改变的x值写成x .....如果你知道我的意思:D
x++x+=1相同 x+.05不会修改x的值,因此x将始终为0并导致无限循环......

答案 1 :(得分:2)

我认为这就是你要找的东西:

for( x = 0; x <= 1; x+=0.05 )
{
   printf("%f\n", x );
}

您需要更改为 + = 符号并将 d 更改为 f

  • d 用于十进制整数
  • f 适用于浮点数

答案 2 :(得分:0)

您需要添加和赋值复合运算符,+=,而不仅仅是+

for( x = 0; x <= 1; x+=.05 )

目前,您的表达式的结果是x + 5,并且未使用其结果,导致您的循环条件永远不会为假。

答案 3 :(得分:0)

将for循环中的行更改为
    for( x = 0; x <= 1; x += .05 )

请注意     x += .05
相当于打字
    x = x + .05
这是你真正想要的,因为目标是更新x的值。