尝试在for循环中串行使用C中的scanf和printf函数时,程序正在关闭。我在Windows 7上使用CODE :: BLOCKS。以下是代码。为什么会这样?
#include<stdio.h>
void main()
{
int i,A[i];
for(i=0;i<10;i++)
{
scanf("%d",&A[i]);
printf(" %d",A[i]);
}
}
答案 0 :(得分:4)
在您发布的代码中,A[i]
未定义,因为i
尚未初始化。此外,您需要确保数组A[]
的大小为10
,因为您正在迭代for循环中的10
个元素。请参阅以下修改后的代码:
#include<stdio.h>
int main()
{
int i, A[10];
for(i=0;i<10;i++)
{
scanf("%d",&A[i]);
printf(" %d",A[i]);
}
return 0;
}
在上面的代码中,A[10]
是10
个元素的数组。此外,请注意main()
的返回类型为int
(而不是void
)。因此,在底部添加了一个声明return 0
。
工作代码here。