分支语句:
1、 if(表达式)
{
表达式值为真,执行此处代码
}
2、 if(表达式)
{
表达式值为真,执行此处代码
}
else
{
表达式值为假,执行此处代码
}
3、 if(表达式1)
{
表达式1值为真,执行此处代码
}
else if(表达式2)
{
表达式2值为真,执行此处代码
}
else
{
表达式值1\2都为假,执行此处代码
}
注:当要执行的代码只有一行,语法上可以省略大括号,但安全性和扩展性较差
4、 switch(整型变量或表达式)
{
case 整常数1:要执行的语句;
case 整常数2:要执行的语句;
case 整常数3:要执行的语句;
default:除以上,要执行的语句;
}
switch是开关结构,当case后的值与小括号中的匹配成功后,会打开执行开关,接下来的代码就都会执行
break可以关闭执行开关,如果每个case后都跟一个break就形成了分支结构
循环语句:
1、 for([1];[2];[3])
{
[4];
}
通过反复执行一些代码,达到解决问题的目的
1、循环的初始化工作,只执行一次 -> 多次使用的变量可以定义在循环外,则1省略
2、判断循环条件,为真才继续,否则退出for
4、循环体,可以被反复执行的代码
3、改变条件,然后再执行2
执行顺序:1 2 4 3 2 4 3 2 4 3 直到2为假,然后退出for
1\2\3\4 都可以省略,因此for可以写很多种样式
注意:
2如果省略表示永远为真
1\2\3 都为空时,条件永远为真,为死循环,无法正常结束
for是一种非常灵活的循环,但也非常危险,一般为了防止出错,用一个变量来引导它的运行,这个变量就叫循环变量(index->i,j)
1、初始化循环变量,也可以直接定义循环变量(int i=0)(C99标准才支持)
2、判断循环变量的值是否达到边界
4、执行循环体
3、循环变量自变一下
2、 while(条件表达式)
{
循环体
}
当条件表达式为真时执行循环体,相当于for的精简版,for循环一般用于处理循环次数明确的问题,而while用于处理只知道循环条件,但不确定具体的循环次数
3、 do{
…
}while(条件表达式)
先执行循环体,再判断循环条件,循环体至少执行一次,而while和for可能一次都不执行
注意:在do while大括号中定义的变量不能在小括号中使用
注意:if、for、while 小括号后不要有分号
跳转语句:
标签名:
goto 标签;
可以在函数内任意跳转,是一种非常灵活也非常危险的语句,会破坏之前设计好的分支、循环结构,因此很多公司都禁止使用
goto虽然危险,但在驱动编程时,有特殊用法,在驱动出现异常时用来释放资源
break
1、在switch语句中关闭执行开关
2、在循环语句中可以跳出for的一层循环
continue
在循环语句中可以结束本次循环进入下一次循环 // 结束第n次循环,后面的语句不再执行,直接进入第n+1次循环
return
1、把一个结果返回给调用者
2、结束函数的执行,跳转到调用位置
注意:如果函数没有返回值,可以使用 return; 结束函数的执行
循环嵌套:
循环语句中包含循环语句,外层循环一次,内层循环从头到尾执行一遍