经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 程序设计 » C 语言 » 查看文章
C语言的分支和循环语句你了解吗
来源:jb51  时间:2022/2/9 10:02:59  对本文有异议

1、什么是语句?

C语句可分为以下五类:

  • 表达式语句
  • 函数调用语句
  • 控制语句
  • 复合语句
  • 空语句

控制语句用于控制程序的执行流程,以实现程序的各种结构方式,它们由特定的语句定义符组成,C语言有九种控制语句。

可分成以下三类:

1. 条件判断语句也叫分支语句:if语句、switch语句;

2. 循环执行语句:do while语句、while语句、for语句;

3. 转向语句:break语句、goto语句、continue语句、return语句。

2、分支语句(选择结构)

2.1、if语句

语法结构:

  1. //单分支
  2. if(表达式)
  3. 语句;
  4. if(表达式)
  5. 语句1;
  6. else
  7. 语句2;
  8. //多分支
  9. if(表达式1)
  10. 语句1;
  11. else if(表达式2)
  12. 语句2;
  13. else
  14. 语句3;

else的匹配:else是和它离的最近的if匹配的。

2.2、switch语句

switch是一种多分支语句

  1. switch(整型表达式)
  2. {
  3. case 整形常量表达式:
  4. 语句;
  5. }

2.2.1、switch语句中的break

switch语句需要搭配break才能实现真正的分支

  1. #include <stdio.h>
  2. int main()
  3. {
  4. int day = 0;
  5. switch(day)
  6. {
  7. case 1
  8. printf("星期一\n");
  9. break;
  10. case 2:
  11. printf("星期二\n");
  12. break;
  13. case 3:
  14. printf("星期三\n");
  15. break;
  16. case 4:
  17. printf("星期四\n");
  18. break;
  19. case 5:
  20. printf("星期五\n");
  21. break;
  22. case 6:
  23. printf("星期六\n");
  24. break;
  25. case 7:
  26. printf("星期天\n");
  27. break;
  28. }
  29. return 0;
  30. }

当需要:

1. 输入1-5,输出的是“weekday”;

2. 输入6-7,输出“weekend”

所以我们的代码就应该这样实现了:

  1. #include <stdio.h> //switch代码演示
  2. int main()
  3. {
  4. int day = 0;
  5. switch(day)
  6. {
  7. case 1
  8. case 2:
  9. case 3:
  10. case 4:
  11. case 5:
  12. printf("weekday\n");
  13. break;
  14. case 6:
  15. case 7:
  16. printf("weekend\n");
  17. break;
  18. }
  19. return 0;
  20. }

break语句 的实际效果是把语句列表划分为不同的分支部分。

编程好习惯

在最后一个 case 语句的后面加上一条 break语句。(之所以这么写是可以避免出现在以前的最后一个 case 语句后面忘了添加 break语句)。

2.2.2default子句

当所有case条件都不满足时就会执行default语句

3、循环语句

3.1、while循环

while 语法结构

  1. while(表达式)
  2. 循环语句;

while语句执行的流程:

在屏幕上打印0-10的数字。

  1. #include<stdio.h>int main(){ int i = 0; while(i<=10) { printf("%d ", i); i = i+1; } return 0;}#include<stdio.h>
  2. int main()
  3. {
  4. int i = 0;
  5. while(i<=10)
  6. {
  7. printf("%d ", i);
  8. i = i+1;
  9. }
  10. return 0;
  11. }

3.1.1while中的break和continue

break:跳出整个循环

continue:跳过一次循环

3.2、for循环

3.2.1、语法

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

表达式1

表达式1为初始化部分,用于初始化循环变量的。

表达式2

表达式2为条件判断部分,用于判断循环时候终止。

表达式3

表达式3为调整部分,用于循环条件的调整。

for循环的执行流程

3.2.2、break和continue在for循环中

与while循环相同

3.2.3、for语句的循环控制变量

1、不要在循环体内修改循环变量防止死循环

2、采用前闭后开区间写法

  1. for(i=0;i<10;i++)
  2. {}

3.2.4、for循环的变种

  1. #include <stdio.h>
  2. int main()
  3. {
  4. for(;;)
  5. {
  6. printf("hehe\n");
  7. }
  8. //for循环中的初始化部分,判断部分,调整部分是可以省略的,但是不建议初学时省略,容易导致问 题。 return 0;
  9. }

3.3do…while()循环

3.3.1、语法

  1. do
  2. 循环语句;
  3. while(表达式);

3.3.2、执行流程

3.3.3、 do语句的特点

先执行一次循环体

3.3.4、break和continue

同for循环

4、goto语句

语法格式:

  1. again:
  2. goto again;

使用场景:

跳出多层循环

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注w3xue的更多内容!    

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号