笔记_C语言_控制流

语句与程序块

;分号为语句的结束符,{ }花括号把声明和语句括在一起构成复合语句(也叫做程序块),右边的花括号位程序块的结束符号,后面不用再加分号。

if-else语句

因为 if-else 语句的 else 部分是可选的,所以在嵌套的 if 语句中省略它的 else 部 分将导致歧义。解决的方法是将每个 else 与最近的前一个没有 else 配对的 if 进行匹配。

switch

break 语句将导致程序的执行立即从 switch 语句中退出。在 switch 语句中,case 的作用只是一个标号,因此,某个分支中的代码执行完后,程序将进入下一分支继续执行, 除非在程序中显式地跳转。跳出 switch 语句最常用的方法是使用 break 语句与return 语句

switch (表达式) {
case 常量表达式: 语句序列
case 常量表达式: 语句序列
default: 语句序列
}

while循环与for循环

逗号运算符“,”也是 C 语言优先级最低的运算符,在 for 语句中经常会用到它。被逗 号分隔的一对表达式将按照从左到右的顺序进行求值,表达式右边的操作数的类型和值即为 其结果的类型和值。这样,在 for 循环语句中,可以将多个表达式放在各个语句成分中,比 如同时处理两个循环控制变晕。我们可以通过下面的函数 reverse(s)来举例。该函数用于 倒置字符串 s 中各个字符的位置。

#include <string.h> 
/* reverse:  reverse string s in place */
void reverse(char s[]){
int c, i, j;
	for (i = 0, j = strlen(s)-1; i < j; i++, j--) {
            c = s[i];
            s[i] = s[j];
            s[j] = c;
            }
} 

某些情况下的逗号并不是逗号运算符,比如分隔函数参数的逗号,分隔声明中变量的逗号等, 这些逗号并不保证各表达式按从左至右的顺序求值。

do-while循环

C 语言中的第三种循环——do-while 循环则在循环体执行后测试终止条件, 这样循环体至少被执行一次

do 
语句 while (表达式); 

break语句与continue语句

break

break 语句可用于从 for、while与do-while等循环中提前退出,就如同从switch语句中提前退出一样。break 语句能使程序从 switch 语句或最内层循环中立即跳出。

continue

continue 语句与 break 语句是相关联的,但它没有 break 语句常用。continue 语 句用于使 for、while 或 do-while 语句开始下一次循环的执行。在 while 与 do-while 语句中,continue 语句的执行意味着立即执行测试部分;在 for 循环中,则意味着使控制 转移到递增循环变量部分。continue 语句只用于循环语句,不用于 switch 语句。某个循 环包含的 switch 语句中的 continue 语句,将导致进入下一次循环。

goto语句与标号

for ( ... )
	for ( ... ) {
		...                
		if (disaster)                    
			goto error;
	}
...    
error: 

大多数情况下,使用goto语句的程序段比不使用goto语句的程序段要难以理解和维护, 少数情况除外,尽管该问题并不太严重,但我们还是建议尽 可能少地使用 goto 语句。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值