使用{}括起来的代码,就可以称为一个代码块,代码块可以由一条件或多条语句组成,多条语句是一个整体;
语句以;号结束,一条语句是一个整体。
二、控制流
1、条件分支语句
1-1、if语句
if(表达式){
代码段,表达式为真时执行。 }
1-2、if else语句
if(表达式1){ 代码段,表达式1为真时执行。
}else if(表达式2){ 代码段,表达式2为真时执行。 }else{ 代码段,以上条件都不满足执行。 }
2、开关分支语句
1、switch语句switch(控制表达式){ case 常量表达式1:语句;break; case 常量表达式2:语句;break; case 常量表达式n:语句;break; default :语句;break;}注:控制表达式为整型或字符类型变量。
3、if语句与swtich语句区别
3-1、if语句更灵活,适合更多复杂的分支语句; 3-2、switch语句更直观; 3-3、在多分支的情况下,使用 if ... else if 的形式的程序会从第一个if里面的表达式开始逐条往下判断,而使用switch则直接计算一次表达式的值后就查找 case,效率比前者高。
三、循环
循环就是重复执行循环体(语句、语句块)的一种语句,在C语言中,每一个循环都有一个控制表达式(循环终止的条件),每次循环的时候,都要向控制表达式求值,如果表达式的值为真(1),那么继续循环,如果值为假,终止循环。 C语言中使用循环语句来反复执行特定的代码段,在C语言中循环有三种表现方式:for/while/do while
1、for循环 1-1、语法规则 for(表达式1;表达式2;表达式3){ 循环体; } 表达式1:用来标识每一次循环,初始值 表达式2:用来判断循环是否执行的控制语句 表达式3:每次循环之间的规律,步长
1-2、循环的执行顺序 1)第一次执行循环语句的时候 执行表达式1->表达式2(真)->循环体 执行表达式1->表达式2(假)->终止循环 2)第二次执行循环语句的时候 执行表达式3->表达式2(真)->循环体 执行表达式3->表达式2(假)->终止循环 3)第n次执行循环语句的时候 执行表达式3->表达式2(真)->循环体 执行表达式3->表达式2(假)->终止循环 1-3、for(;;) ,典型的死循环,编译不会报错,循环次数是不确定的。命令行中可以用ctrl+c强制终止循环。 2、while循环 while循环与for循环完全互通,除了语法格式稍有区别,其它原理、工作方式都是一样的。 2-1、语法规则
表达式1;
while(表达式2){ 循环体; 表达式3; } 2-2、执行顺序 1)第一次执行循环的时候 表达式1->表达式2(真)->循环体->表达式3 表达式1->表达式2(假)->终止循环 2)第二次执行循环的时候 表达式2(真)->循环体->表达式3 表达式2(假)->终止循环 3)第N次执行循环的时候 表达式2(真)->循环体->表达式3 表达式2(假)->终止循环
3、do ... while循环
先执行循环体,再进行判断,do...while与for、while最大的不同,就算条件不成立,至少也会执行一次。 3-1、语法规则 表达式1; do{ 循环体; 表达式3 }while(表达式2); 3-2、执行顺序 1)第一次执行循环 表达式1->循环体->表达式3->表达式2(真)->继续 表达式1->循环体->表达式3->表达式2(假)->终止 2)第二次执行循环 循环体->表达式3->表达式2(真)->继续 循环体->表达式3->表达式2(假)->终止
4、循环体内常用的三个关键字: break,跳出循环体执行循环体后面的语句,不但可以终止switch语句,也可以终止for循环语句。
continue,可以终止当次循环,继续下一次循环。
goto,一般不使用goto语句,因为goto语句会造成结构混乱。