#include <stdio.h>
#define SIZE 10
int main(void)
{
int i = 0;
int array[SIZE];
for(;i < SIZE;++i)
array[i] = i;
for(;i < SIZE;++i)
printf("array[%d] = %d\n",i,array[i]);
}
以上两个for循环,运行后,没有输出结果。
#include <stdio.h>
#define SIZE 10
int main(void)
{
int i = 0;
int array[SIZE];
for(i=0;i < SIZE;++i)
array[i] = i;
for(i=0;i < SIZE;++i)
printf("array[%d] = %d\n",i,array[i]);
}
假如在两个for循环中加上 循环变量i的初始化,就有结果了。不理解为什么,本人已经在外面定义并且初始化了循环变量i 了。
解决方案
20
#include <stdio.h>
#define SIZE 10
int main(void)
{
int i = 0;
int array[SIZE];
for(;i < SIZE;++i)
array[i] = i;
for(;i < SIZE;++i) // 此时,i=SIZE,也就没有进入循环体
printf("array[%d] = %d\n",i,array[i]);
}