使用scanf()读取要在for循环中使用的整数

时间:2014-02-07 02:50:52

标签: c

#include<stdio.h>

int main()
{
   int one;
   int two;

   scanf("%d", &one);
   scanf("%d", &two);

   for(int i = one; i < two; i++){ printf("HELLO\n"); }
}

为什么这不起作用?如何从stdin读取整数并在for循环中使用它?

2 个答案:

答案 0 :(得分:1)

C中,您必须在块的开头声明所有变量。您在i声明中声明了变量for-loop。这可能是问题所在。 除非你使用的是C99版本的C,否则你可以在for-loop声明中声明一个变量。 此外,您需要确保您的第二个数字大于第一个。

答案 1 :(得分:0)

答案很简单,循环中“i”的初始化是个问题。如果你可以在你的程序之外给出声明就可以了。如果没有,它将通过错误

错误: * 循环初始声明在C99模式之外使用 *