1、1. breakbreak 语句的使用场合主要是 switch 语句和循环结构。在循环结构中使用 break 语句,如果执行了 break 语句,那么就退出循环,接着执行循环结构下面的第一条语句。如果在多重嵌套循环中使用 break 语句,当执行 break 语句的时候,退出的是它所在的循环结构,对外层循环没有任何影响。如果循环结构里有 switch 语句,并且在 switch 语句中使用了 break 语句,当执行 switch 语句中的 break 语句时,仅 退出 switch 语句,不会退出外面的循环结构。通过图 3-17,读者可以很直观地了解 break 语句的使用。图 3-17 b
2、reak 语句2. continuecontinue 语句是这 5 种结束循环的方式中最特殊的,因为它并没有真的退出循环,而是只结束本次循环体的执行,所以在使用 continue 的时候要注意这一点。图 3-18 为各种循环结构中 continue 语句的使用。在 for 循环中,首先执行表达式 1(注意表达式 1 在整个循环中仅执行一次) ,接着执行表达式 2,如果满足条件,那么执行循环体,如果在循环体中执行了 continue 语句,那么就跳转到表达式 3 处执行,接下进行下一次循环,执行表达式 2,看是否满足条件;在 while 循环中,如果执行了 continue 语句,那么就直接跳转
3、到表达式处,开始下一次的循环判断;在 do while 循环体中如果执行了 continue 语句,那么就跳转到表达式处进行下一次的循环判断,这一点前面已经验证过了。图 33. return 语句(可以嵌入在子程序的循环中)如果在程序中遇到 return 语句,那么代码就 退出该函数的执行,返回到函数的调用处,如果是 main()函数,那么结束整个程序的运行。图 3-20 为 return 语句的使用。图 3-20 return 语句如果是在自定义的函数中执行,那么执行 return 之后就返回到函数的调用处继续往下执行。一个函数体中可以有多个 return 语句, 但在多个 return 语
4、句中,被执行的只有一个.当 return语句执行时,函数 “返回“了.即跳出了该函数体, 转而执行别的代码 .每个 return 语句的 return 值可以各不相同,当函数返回时,你可以根据 return 的不同值进行不同的处理.如: 如果返回 1 表示 ab,返回 2 表示 ab)return 1;else if(a #include int print() int n; n = 0; printf(“使用 return 来结束循环n“); while(1) if(9=n) return n; n+; return 0; void main(void) int ret; printf(“调
5、用 print()函数之前n“); ret = print(); printf(“print()函数的返回值 ret=%dn“,ret); printf(“调用 print()函数之后n“); return ; 运行结果: 调用 print()函数之前 使用 return 来结束循环 print()函数的返回值 ret=9 调用 print()函数之后 图 3-21 exit( )函数在上面的代码中,用 return 语句来退出 while 死循环,在 main()函数中 print()函数的调用处将返回值赋给 ret,打印输出后可以看到使用 return 语句成功地返回了 9。下面来看 ex
6、it()函数的使用。#include #include void print() int n; n = 0; printf(“使用 exit 来结束循环n“); while(1) if(9=n) exit(1); n+; return ; void main(void) int ret; printf(“调用 print()函数之前n“); print(); printf(“调用 print()函数之后n“); return ; 运行结果: 调用 print()函数之前 使用 return 来结束循环 从以上代码可以看出,如果执行 exit()函数后能够返回到 main()函数的调用处,那么可以打印出接下来的信息“调用 print()函数之后” ,但是运行结果表明在调用 exit()函数之后没有任何输出,所以执行 exit()函数之后将直接结束整个程序的运行。