C语⾔For循环详解
c语⾔中的for循环语句使⽤最为灵活,不仅可以⽤于循环次数已经确定的情况,⽽且可以⽤于循环次数不确定⽽只给出循环结束条件的情况,它完全可以代替while语句.
for(表达式 1;表达式 2;表达式 3)语句
它的执⾏过程如下:
(1)先求表达式 1.
(2)求表达式2,若其值为真(值为⾮0),则执⾏for语句中指定的内嵌语句,然后执⾏下⾯第三步做若为
假(值为0),则结束循环,转到第5步.
(3)求解表达式3
(4)转回上⾯第(2)步骤继续执⾏;
(5)结束循环,执⾏for语句下⾯的⼀个语句;
for(循环变量赋初值;循环条件;循环变量增值)语句
如
for(i=1;i<=100;i++)sum=sum+i;
它的执⾏相当于
i=1;
while(i<=100){
sum=sum+i;
i++;
}
显然,⽤for语句更简单、⽅便。
说明:
(1)for语句的⼀般形式中的"表达式1"可以省略,此时应在for语句之前给循环变量赋初值.注意省略表达式1时,其后的分号不能省略.如
for(;i<=100;i++){....};
(2)如果表达式2省略即不判断循环条件,循环⽆终⽌地循环下去,也就是认为表达式2始终为真.
明解c语言例如:for(i=1;;i++){.....};
相当于
i=1;
while(1)
{sum=sum+1;
i++;
}
(3)表达式3也可以省略,但此时程序设计者应另外设法保证循环能正常结束.如:
for(i=1;i<=100;)
{sum=sum+1;
i++;
}
这个例⼦的循环增量没有放在表达式三的位置⽽是作为循环体的⼀部分其效果是⼀样的.
(4)可以省略表达式1和表达式3,只有表达式2 即只给循环条件.
如
for(;i<=100;)
{
sum=sum+i;
i++;
}
这个相当于
whlie(i<=100)
{
sum=sum+i;
i++;
}
(5)三个表达式都可以省略,如:
for(;;)语句
相当于
while(1)语句
即不设初值不判断条件(认为表达式2为真值)循环变量不增值,⽆终⽌的执⾏循环体.
(6)表达式1也可以是设置循环变量初值的赋值表达式,也可以是与循环变量⽆关的其他表达式.如:
for(sum=0;i<=100;i++) {
sum=sum+i;
}
for(sum=0,i=0;i<=100;i++) {
sum=sum+i;
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论