目录

 

1.for循环语法

2.for循环执行原理

3.for循环中的break和continue

3.1 break

3.2 break

4.for循环的一些变种体

4.1 缺失初始条件,判断条件,调整语句

 4.2 初始条件省略

4.2.1 一个for循环的情况

4.2.2 嵌套for循环缺失初始条件的情况

 4.2.3 使用多个变量控制循环

1.for循环语法

for(表达式1;表达式2;表达式3){

循环语句;

}

//表达式1:为初始化部分,用于初始化循环变量

//表达式2:为条件判断部分,用于判断循环什么时候终止

//表达式3:为调整部分,用于循环条件的调整

 //表达式1:为初始化部分,用于初始化循环变量 //表达式2:为条件判断部分,用于判断循环什么时候终止 //表达式3:为调整部分,用于循环条件的调整

2.for循环执行原理

下面附上流程图:

执行语句进入for循环,先执行expr1语句,然后执行expr2判断语句,若为真就进入for循环体,否则就跳过循环。

进入循环体后开始执行循环体内的语句,然后再执行expr3调整语句,如此往复。。

当初始条件不满足expr2判断语句时便可结束循环。

【注】为了保证for循环的可控性,尽量不要改变循环体中的变量

3.for循环中的break和continue

3.1 break

 当for循环中执行到if语句中的break时,会直接跳出当前的for循环。

3.2 continue

目录

1.for循环语法

2.for循环执行原理

3.for循环中的break和continue

3.1 break

3.2 continue

4.for循环的一些变种体

4.1 缺失初始条件,判断条件,调整语句

 4.2 初始条件省略

4.2.1 一个for循环的情况

4.2.2 嵌套for循环缺失初始条件的情况

 4.2.3 使用多个变量控制循环

 当i==5为真时,代码进入if中,当执行到continue时,会跳过continue下一个语句,也就是跳过printf("%d ", i)----> 跳过输出5。

4.for循环的一些变种体

4.1 缺失初始条件,判断条件,调整语句

int i = 0;

for (;;)

{

printf("hello\n");

//for循环的判断部分省略意味着判断会成为真

}

这种情况执行起来会如何?

答:死循环

原因:for循环的判断部分省略意味着判断会成为真,所以循环会一直执行下去。

 4.2 初始条件省略

4.2.1 一个for循环的情况

for ( ; i < 3; i++)

{

printf("hello\n");

}

 缺少初始条件时系统执行的时候会默认 i=0.

4.2.2 嵌套for循环缺失初始条件的情况

int j=0;

for ( ; i < 3; i++)

{

for ( ; j < 3; j++)

{

printf("hello\n");

}

}

return 0;

原理:系统执行到for①时,默认i=0,然后进入for②,默认j=0,进入for②执行三次printf 输出三个hello,然后判断条件为假,跳出for②;接着回到for①中使 i++,判断条件为真,再次进入for②,但是因为for②中没有给j初始化,所以此时 j = 3,不满足 j<3,所以直接跳过for②;下面循环同理

 4.2.3 使用多个变量控制循环

原理和一个变量相同

相关链接

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: