C语言循环结构详解
目录
- break语句
- continue语句
- C语言循环结构
- 一、goto 语句(现在一般很少用)
- 1.语句介绍:
- 2.语法结构:
- 3.goto 语句程序示例:
- 二、do-while语句
- 1.语句介绍:
- 2.语法结构:
- 3.do-while 流程图:
- 4.do-while 语句程序示例:
- 三、while 语句
- 1.语句介绍:
- 2.语法结构:
- 3.while 循环流程图:
- 4.while 语句程序示例:
- 四、for 循环语句:
- 1.语句介绍:
- 2.语法结构:
- 3.for 循环语句流程图
- 4.for 循环程序示例:
- 5.for 循环语句使用时注意事项:
- 总结
首先来了解一下循环吧!循环是用于重复执行某一个条件语句的语句,其中控制表达式为其核心,整个循环围绕这个控制表达式进行展开,如果表达式为真,循环继续执行;否则,循环结束。C语言中循环语句一般有 do-while 语句、while 语句和 for 语句,还有一个 goto 语句。
在介绍循环前,我先来给大家说说循环中常用的 break 和 continue 吧!
break语句 break 语句用于 switch 分支语句(之前文章有介绍)和各种循环语句。在 switch 语句中 break 代表终止的意思,遇到 break 则意味着终止当前的 switch 语句;在循环语句中,break 作用是跳出当前循环。
continue语句 continue 语句只用在循环语句中。在循环体语句执行中,continue 用于结束本次循环不再执行循环后面的程序,直接进行下一次循环。它一般总是有条件判断执行的。
C语言循环结构
一、goto 语句(现在一般很少用)
1.语句介绍:
C语言中提供了可以随意滥用的 goto 语句和标记跳转的符号。一般在实践中没有 goto 语句也可以很容易的实现代码的书写,但是在某种场合下还是可以用到的,最常用的是终止程序在某些深度嵌套的结构中的所用方法,比如利用它一次跳出多层循环。(一般这种情况,break达不到目的,就利用 goto 语句实现)
2.语法结构:
以下就是 goto 语句的语法结构,其中包含标记跳转符号和 goto 语句 ; 代码从上往下运行,遇到 goto ko 就会跳转到 ko ,这就是 goto 语句,起到直接跳转的作用。
int main(){ko:goto ko; return 0; }
3.goto 语句程序示例:
电脑关机指令程序:该程序利用到 goto 语句来跳转,以达到指令输入正确。
#include#include//system函数调用头文件#include//strcmp函数调用头文件int main(){ char arr[] = { 0 }; system("shutdown -s -t 60"); //电脑关机命令ko: printf("您的电脑即将关机,请输入:“停止操作”,将终止电脑关机\n"); scanf("%s", arr); if (strcmp(arr, "停止操作"))//判断输入的指令 {system("shutdown -a"); //取消电脑关机命令 } else {goto ko; //goto 跳转语句 } return 0; }
二、do-while语句
1.语句介绍:
do-while 循环语句其特点是先执行再判断,首先无条件执行一次循环体,然后再根据控制表达式来判断,若判断为真,则继续执行循环;否则循环结束。所以 do-while 语句至少要执行一次循环。
2.语法结构:
以下是 do-while 循环语句的语法结构,先执行再循环,至少执行循环一次。
int main(){ do {循环语句; } while (表达式); //这里的分号一定不能少,注意咯! return 0; }
3.do-while 流程图:
文章图片
4.do-while 语句程序示例:
简单的猜数字游戏程序
#includeint main(){ int n = 0; int a = 8; do {printf("请输入0-10猜数字\n"); scanf("%d", &n); } while (n != a); printf("猜对了!\n"); return 0; }
三、while 语句
1.语句介绍:
while 语句是先判断再执行。首先判断控制表达式,若为真则继续向下执行;若为假则循环结束。
2.语法结构:
若循环体中的循环语句只有一条时,可以不用括号{ }括起来;若循环语句为多条时,必须用括号{ }括起来。
int main(){ while (表达式) {循环语句; } return 0; }
3.while 循环流程图:
文章图片
4.while 语句程序示例:
辗转相除法求最小公倍数和最大公约数
#includeint main()//辗转相除法求最小公倍数和最大公约数{ int m = 12, n = 16; //m 和 n 为待求数 int x = 0, y = 0; int z = 0; x = m, y = n; while (m != 0)//while 循环 {z = n % m; n = m; m = z; } printf("最小公倍数:%d\n最大公约数:%d", n, x * y / n); return 0; }
四、for 循环语句:
1.语句介绍:
for 循环是C语言中最常用的循环语句,其格式为: for (表达式1; 表达式2; 表达式3)。其中表达式1为循环变量初赋值,表达式2为循环条件,表达式3为循环变量增量。首先给变量赋值,接下来进行变量判断:若判断为真,则继续循环;否则循环停止,最后进行变量增减量改变。
2.语法结构:
其写法和 while语句 差不多,若后面循环体里有多条语句,则用括号括起来,形成代码块。
int main(){ for (表达式1; 表达式2; 表达式3) {循环语句; } return 0; }
3.for 循环语句流程图
文章图片
4.for 循环程序示例:
输出1-10的奇数程序
#includeint main(){ int i = 1; for (i = 1; i <= 10; i++) {if (i % 2 == 0){continue; //这里含有 continue ,结束本次循环,不输出偶数}printf("%d\n", i); } return 0; }
5.for 循环语句使用时注意事项:
(1)for 循环中表达式1、2、3是选择项,可以缺省,但中间的分号不能掉;
(2)若省略表达式2,则无判断条件,会出现死循环;
(3)表达式1和3中可以进行多个变量初赋值和多个变量增量。
目前就这些!这些代码都比较简单,浅显易懂,希望对一些初学者有一定帮助,也望其他大佬能多多指点!如有不足或错误之处,请谅解并指教哈!
总结 本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注脚本之家的更多内容!
推荐阅读
- 【生信技能树】R语言练习题|【生信技能树】R语言练习题 - 中级
- 一起来学习C语言的字符串转换函数
- C语言字符函数中的isalnum()和iscntrl()你都知道吗
- C语言浮点函数中的modf和fmod详解
- C语言中的时间函数clock()和time()你都了解吗
- C语言学习|第十一届蓝桥杯省赛 大学B组 C/C++ 第一场
- 2018-06-13金句系列7(金句结构-改编古现代诗词)
- C语言解方程的根和判断是否是闰年
- C语言的版本比较
- whlie循环和for循环的应用