C语言重要知识点总结【6】:C语言9种控制语句(详解)
C语言重要知识点总结【6】:C语言9种控制语句(详解)
目录:
- 1. if()···else··· 语句- 2. break语句 和 continue语句- 3. switch 语句- 4. while 语句- 5. do()···while 语句- 6. for 语句- 7. for、while、do···while() 语句对比- 8. goto 语句- 9. return 语句
大一下学期学习了C语言、暑假在家没事又把C语言复习了一遍。因此,趁热打铁,把所学内容写成笔记,以便以后复习,也希望能够帮助大家学好C语言。
以下内容如有错误,请大家在评论区指正,谢谢支持,共同进步。 go、go、go !!!一、控制语句及其用处(表格)
控制语句,用于完成一定的控制功能。C语言 只有 9种控制语句,它们的形式是:
共9个 表现形式 用处 1 if()···或 if()···else··· 条件语句 2 for()··· 循环语句 3 while()··· 循环语句 4 do···while() 循环语句 5 continue 结束本次循环语句 6 break 中止执行 switch 或 循环语句 7 switch 多分支选择语句 8 return 从函数返回语句 9 goto 转向语句,在结构化的程序中基本不用goto语句 在上边的9种语句表示形式中:
() 表示括号中是一个“判别条件”
**···** 表示 内嵌的语句二、控制语句详细表示(图片)
下面这张图片是《C程序设计》书附录中的一个片段,我个人感觉这张图片对9种控制语句概括的内容写得也很不错。
算是上边内容的一个补充吧:上边表格中的“判别条件”实际就是由表达式构成
三、9种控制语句(详解)
1. if()···else··· 语句
if(a>b) max=a; else max=b;
x>y
是判别条件
max=a;
和max=b;
是语句,这两个语句内嵌在if···else语句中,这个if···else语句的作用是:先判别条件a>b是否成立,如果a>b成立,就执行内嵌语句max=a;,否则就执行内嵌语句max=b;在选择结构中条件语句一共有3种形式:
①第一种:
if(表达式) 语句1 (没有else部分)
②第二种:
if(表达式1) 语句1 else 语句2
③第三种:
if(表达式) 语句1 else if(表达式) 语句2 else if(表达式) 语句3 ······ else 语句 n
2. break语句 和 continue语句
在介绍break语句 和 continue语句在程序中作用之前我们先看一下下面3个简单的程序,我会在最后用图片总结出 break语句 和 continue语句的区别:
①题目:输出以下4X5矩阵 程序:…………………………………………
#include<stdio.h> int main() {<!-- --> int i,j,n=0; for(i=1;i<=4;i++) {<!-- --> for(j=1;j<=5;j++) {<!-- --> printf("%d\t",i*j); n=n+1; if(n%5==0) printf("\n"); } printf("\n"); } return 0; }
运行结果:…………………………………………
程序:…………………………………………
②break语句在程序中的应用:
#include<stdio.h> int main() {<!-- --> int i,j,n=0; for(i=1;i<=4;i++) {<!-- --> for(j=1;j<=5;j++,n++) {<!-- --> if(n%5==0) printf("\n"); if(i==3 && j==1) break; printf("%d\t",i*j); } } printf("\n"); return 0; }
运行结果:………………………………………… ③continue语句在程序中的应用:
程序:…………………………………………
#include<stdio.h> int main() {<!-- --> int i,j,n=0; for(i=1;i<=4;i++) {<!-- --> for(j=1;j<=5;j++,n++) {<!-- --> if(n%5==0) printf("\n"); if(i==3 && j==1) continue; printf("%d\t",i*j); } } printf("\n"); return 0; }
运行结果:…………………………………………
④ break语句 和 continue语句对比
图中两个程序中的代码就红方框中不一样,其它代码完全相同,那么我们从中可以得到什么结论:
从上图的对比情况,可以很容易看出:
break 直接跳出 i=3(1<= j <=5)的 整个循环
continue 是只循环结束 j=1(i=3) 本次循环continue 和 break语句在循环结构 for、while、do···while() 语句中用的都比较多。
但,continue语句一般只用于循环语句中;而break语句 不仅可以在循环语句中可以使用,在switch语句中也会经常使用到,在switch语句中的运用在后面对switch 语句百分制成绩中介绍。
3. switch 语句
switch语句的一般形式如下:
switch(表达式) {<!-- --> case 常量表达式1 : 语句1 case 常量表达式2 : 语句2 ··· case 常量表达式n : 语句n default : 语句n+1 }
前缀case 和 default 本身并不改变控制流程,它们之起标号作用,在执行上一个case后标志的语句后,继续顺序执行下一个case 前缀所标志的语句,除非上一个语句中最后用break语句是控制转出switch结构。
注意: ②case 后面的常量必须互不相同
下面我们看一个switch实例:
switch 语句(内含break语句)
题目:要求按照考试成绩的等级输出百分制分数段,A等为85分以上,B等为70 ~ 84分,C等为60 ~ 69,D等为60分以下。成绩等级由键盘输入。
switch语句:多分支选择语句
#include<stdio.h> int main() {<!-- --> char grade; printf("输入等级:"); scanf("%c",&grade); printf("成绩范围:"); //输入大写字母:A B C D switch(grade) {<!-- --> case 'A':printf("85~100");break; case 'B':printf("70~84");break; case 'C':printf("60~69");break; case 'D':printf("<60\n");break; default: printf("enter data error!\n");break; //输入数据不在范围内 } return 0; }
执行结果…………………………
其它文章:
1.
c语言百分制成绩转换的2种方法(switch语句或if语句)
2.
判断闰年的3种方法(判断+范围输出)4. while 语句
while语句的一般形式如下:
while(表达式) 语句
下面举一个简单的例子:
问题:求1+2+3+…+100
程序:………………………………
#include<stdio.h> int main() {<!-- --> int i=1,s=0; while(i<=100) {<!-- --> s=s+i; //累加求和 i++; } printf("s=%d\n",s,i); return 0; }
执行结果…………………………
5. do()···while 语句
do()···while语句的一般形式:
do 语句 while(表达式);
【注意】while(表达式)后面要以
;
结尾问题:求1+2+3+…+100
程序:……………………………………
#include<stdio.h> int main() {<!-- --> int i=1,s=0; do {<!-- --> s=s+i; //累加求和 i++; } while(i<=100); printf("s=%d\n",s,i); return 0; }
执行结果…………………………………
6. for 语句
for语句的一般形式为:
for(表达式1;表达式2;表达式3) 语句
问题:求1+2+3+…+100
程序:………………………………
#include<stdio.h> int main() {<!-- --> int i,sum=0; for(i=1;i<=100;i++) sum+=i; //累加求和 printf("sum=%d\n",sum); return 0; }
执行结果:………………………………
7. for、while、do···while() 语句对比
① for语句与while语句对比
3种循环都可以用来处理同一问题,一般情况下他们可以相互代替。而for语句在有关循环的问题中是最常用的,for语句更为灵活,不仅可以用于 循环次数已确定 的情况,还可以用于循环次数不确定而只给出循环条件的情况,它
完全可以代替while语句
。for(表达式1;表达式2;表达式3) 语句
表达式1; while(表达式2;) {<!-- --> 语句 表达式3; }
② while语句与do···while()语句对比
do···while()语句的执行过程:
先执行一次循环体
,然后再检查条件是否成立,若成立,在执行循环体。do···while()语句至少要执行一次循环体
while语句:先
判断条件
是否成立,若成立再执行循环体。③ for、while、do···while() 三种循环语句可以处理很多复杂的问题,我们就不一一介绍了,如果你感觉对于上面的循环内容还没有看够,可以看一下下面几个关于循环的几个算法实例:
1.
素数(判断,统计,范围输出)3.
水仙花数(输出全部水仙花数)8. goto 语句
goto:转向语句,在结构化的程序中基本不用goto语句,在这里就不作介绍了。
9. return 语句
return:从函数返回语句
几乎我们写的每一个程序一般都要使用return语句,作用就是从函数返回语句。一个函数可以有一个以上的 return语句 ,执行到那个return语句,哪一个return语句起作用。return后面的括号可以不要:
即
return z;
与return(z);
等价return 0; return z; return(z);
函数的返回值是通过函数中的return语句获得的:
主函数main的返回值为 0 时表示程序正常退出
返回值为非零时,表示程序异常退出最后推荐文章:
- C语言重要知识点总结【4】:C语言的32个关键字和9种控制语句- C语言重要知识点总结【7】:C语言中的常量、变量、标识符- C语言重要知识点总结【8】:C语言中变量的数据类型- C语言重要知识点总结【9】:C语言运算符(详解)
相见就是【猿分】
以上内容如有错误,请大家在评论区指正,谢谢支持,共同进步。 加油!!!
如果你感觉我写的内容对你有一定的帮助,请给我点一个 【赞】作为您对我的鼓励, 谢谢!!- C语言重要知识点总结【4】:C语言的32个关键字和9种控制语句- C语言重要知识点总结【7】:C语言中的常量、变量、标识符- C语言重要知识点总结【8】:C语言中变量的数据类型- C语言重要知识点总结【9】:C语言运算符(详解)