《C程序设计语言》笔记 (三) 控制流

时间:2022-12-13 13:50:29
程序语言中的控制流用于控制各计算操作的次序

3.1语句与程序块

用一对花括号{}把一组声明和语句括在一起就构成一个复合语句(也叫作程序块)

复合语句在语法上等价于单语句。函数体中被花括号括起来的语句便是明显的一例

3.2 if-else语句

if-else语句用于条件判定
其中else部分是可选的。

3.3 else-if语句 

if(表达式)
语句
else if(表达式)
语句
else
语句

3.4switch语句

switch语句是一种多路判定语句,他测试表达式是否与一些常量整数值中的某一个值匹配
switch(表达式)
case 常量表达式:语句序列
case 常量表达式:语句序列
default:语句序列

break 语句将导致程序的执行立即从switch中退出。在switch中case的作用只是一个标号

某个分支的代码执行完后,程序将进入下一分支继续执行,除非在程序中显式地跳转

跳出switch语句最常用的方法是break 和 return

 

 3.5 while循环与for循环

for(表达式1;表达式2;表达式3)
语句


表达式1;
while(表达式2){
语句
表达式3;
}

 

3.6 do-while

while和for循环在执行前进行测试
do-while在循环后进行测试

 

3.7 break与continue

break用于从循环中提前退出

continue用于开始下一次循环的执行

 

3.8 goto与标号

C语言提供了可随意滥用goto语句以及标记跳转位置的标号
从理论上讲,goto语句是没有必要的,实践中不使用goto语句也可以很容易的写出代码
至此本书中还没有使用goto语句
但是,在某些场合下goto语句还是用得着的。最常见的用法就是终止程序在某些深度嵌套的结构中的出来过程

标号的命名和变量命名的形式相同,标号的后面要紧跟一个冒号
标号可以位于对应的goto语句前面
标号的作用域是整个函数

大多数情况下,使用goto语句的程序段比不使用goto语句的程序段要难以理解和维护
建议尽可能少的使用goto语句