C语言学习笔记
——控制流
一、switch
switch(表达式)
{
case常量表达式:语句序列case常量表达式:语句序列default:语句序列
}
各分支之间排序任意。但switch的查询顺序是以上至下的。在上一分支的代码执行之后,(没有break或return)会继续执行下一分支代码。
若想多个分支实现同一段代码,可以采用下面的方式:
switch(表达式)
{
caseA:
case B :....caseZ:语句序列1
default : 语句序列;}
二、break与continue
break和continue都能使程序从最内层的循环中立即跳出。区别在于:break跳出循环后不再进行循环而是进入循环体后面的语句,continue却是直接进入下一次循环而不执行其后的语句。
例:j = 0; for(i = 0; i < 100; i++)<span style="white-space:pre"> </span>for(i = 0; i < 100; i++) {<span style="white-space:pre"> </span>{ <span style="white-space:pre"> </span>j ++;<span style="white-space:pre"> </span>j ++; <span style="white-space:pre"> </span>break;<span style="white-space:pre"> </span>continue; <span style="white-space:pre"> </span>j -- ;<span style="white-space:pre"> </span>j --; }<span style="white-space:pre"> </span>} k = 0;<span style="white-space:pre"> </span>k = 0;
第一次循环 i = 0,进入循环体中时,
左边:执行完 j++ 语句之后,直接跳出循环,执行 k = 0; 此时 i = 0;
右边:执行完 j++ 语句之后,进入下一次循环(i ++),执行完后,i =100, j =100;再执行 k = 0语句。
continue不用于switch,只用与循环。