1 for循环语句概述
for循环语句的语法是
for(初始化语句; 条件语句; 表达式语句)
{
执行语句;
}
其中,初始化语句用于每次循环过程中都要修改的变量进行初始化;而条件语句用来控制循环,当条件语句是true时,循环执行大括号中的执行语句;表达式语句用来修改在初始化语句中的变量,在每次执行完大括号中的语句后来执行表达式执行语句。
其流程如图1所示。
图1 for循环语句流程
2 相关问题分析
int a[] = { 4,0,2,3,1 };
int i;
for(i=0; i<5; ++i)
{
........
}
printf(“%d”, a[i]);
此时,printf 的输出是一个很大的负数。从“ 1for 循环语句概述”中可知,经过第 5 次循环后,执行的表达式语句 ++i ,此时 i 的值是 5 ,之后的条件语句”i<5” 就不满足了,for 循环结束,而 i 的值是 5 。此时,在输出 a[i] 的值就相当于输出 a[5] 的值,而数组 a 只有 5 个元素,所以产生了越界,因此输出的是一个未初始化的值。