C语言中的三大循环

C语言中为我们提供了三种循环语句,今天我就来与诸君细谈其中之奥妙。循环这一板块总结的内容较多,而且,很重要!(敲黑板!!!),所以诸君一定要对此上心,耐住性子学习循环,功在专久,而不在速。

大致分为:

(1)while 循环

(2)do-while 循环

(3)for 循环

一. while 循环

1.while 语句跟 i f 语句结构非常相似,表达结构大致一样,其不同点在于,i f 语句仅仅只执行一次,而我们的 while 语句可以实现循环的效果,while 语句循环大致如下:

2.while 循环的运用

这个没啥好说的,这里直接给大家上图举实例了哈

(1)逆序打印

这个逆序打印是什么意思呢?就是说将我们输入的内容按逆顺序打印出来,这里将给大家介绍到一个很重要的点,就是求数字的逆序,这个方法在很多时候都会用到:运用我们学过的运算符 / ,%来求出多位数的每一位

列如 1234 ,我们先将它 %10,就可以得到个位数4,再对它进行 /10,得到123,再将123%10得到十位的3,以此类推,我们就可以得到这个四位数的每一位,再对其进行打印即可,无需多言,咱们直接上图:

二. do-while 循环

  1. do-while 循环的语法形式

do-while 的执行方式较为特别,while 和 for 这两种循环都是先判断,条件如果满足就进入循环,执行循环语句,如果不满足就跳出循环,而do while循环则是先直接进入循环体,执行循环语句,然后再执行while 后的判断表达式,表达式为真,就会进行下一次,表达式为假,则不再继续循环

因此,在 do while 语句中循环体是至少执行一次的,这就是 do while 循环比较特殊的地方

  1. do-while 语句的运用

这个同样我们来举一个打印0~10的例子:

三. for 循环

  1. for 循环的语法形式

for 循环都是老朋友了哈,在之前就已经屡次给诸君提到并且用到过,其表达形式是一个三目操作符,如f o r( exp1 ; exp2 ; exp3 ),其中,exp1用于循环变量的初始化,exp2用于循环结束条件的判断,exp3用于循环变量的调整

  1. for 循环的运用

这个话不多说,直接上图,诸君体会感受

for 循环很简单,直观也好理解,所以for循环也是三大循环中运用的最多的循环

(1)练习:打印素数

这个有关素数的练习我们之前也是做过的,这里再拿出来让大家练练手

(2)for 循环与 while 循环的比较
for 和 while 在实现循环的过程中都有 初始化、判断、调整 这三个部分,但是 for 循环的三个部分非常集中,便于代码的维护,而如果代码较多的时候 while 循环的三个部分就比较分散,所以从形式上 for 循环要更优一些

四. break 和 continue 语句

1.在我们执行循环的过程中,当我们遇到一些情况或者特别要求的时候,就需要我们提前终止循环,这时候怎么办呢?诸君莫慌,存在即合理,既然有这种情况,自然就有相对应的解决办法。这时候就得用上C语言中的两个关键字了------" break " 和 " continue "

(1)break用于永久终止循环,只要break被执行,就会直接跳出整个循环

(2)continue的作用是跳过本次循环在continue后的代码,其运用在 for 循环和 while 循环中有所差异

五. for 循环中的break和continue

(1)break:

(2)continue:

六. while 循环中的break和continue

(1)while 循环中的 break 跟 for 循环中一样,效果没有差异,这里我就不过多赘述了

(2)continue:这里的光标一直在闪烁,表示程序已经进入死循环了,这是为什么呢?是因为当我们 i == 7 时,执行 continue ,直接跳过了在 while 循环中 continue 后的所有语句,因此 i 没有用加 1 ,始终等于 7 ,则一直执行continue语句,程序进入死循环

七. do-while 循环中的 break 和 continue
do-while 语句中的 break 和 continue 的作用和 while 循环中的作用大致都是⼀模⼀样,诸君可以
自己实操体会,这里我就不过多赘述了

OKK,有关C语言中的三大循环:while 循环、do-while 循环、for 循环就给大家讲解到这里,这部分说实话都是我们的老朋友了哈,之前就给诸君提到过也运用过,所以相信大家能够轻松get到这个点。但诸君也切莫轻视,循环在C语言中是相当重要的一个板块。狮子搏兔尚以全力,注重每一个细节,打好基础,咱们才能走的更远嘛,与诸君共勉!!!

相关推荐
Theodore_10228 分钟前
4 设计模式原则之接口隔离原则
java·开发语言·设计模式·java-ee·接口隔离原则·javaee
网易独家音乐人Mike Zhou33 分钟前
【卡尔曼滤波】数据预测Prediction观测器的理论推导及应用 C语言、Python实现(Kalman Filter)
c语言·python·单片机·物联网·算法·嵌入式·iot
----云烟----2 小时前
QT中QString类的各种使用
开发语言·qt
lsx2024062 小时前
SQL SELECT 语句:基础与进阶应用
开发语言
开心工作室_kaic3 小时前
ssm161基于web的资源共享平台的共享与开发+jsp(论文+源码)_kaic
java·开发语言·前端
向宇it3 小时前
【unity小技巧】unity 什么是反射?反射的作用?反射的使用场景?反射的缺点?常用的反射操作?反射常见示例
开发语言·游戏·unity·c#·游戏引擎
武子康3 小时前
Java-06 深入浅出 MyBatis - 一对一模型 SqlMapConfig 与 Mapper 详细讲解测试
java·开发语言·数据仓库·sql·mybatis·springboot·springcloud
转世成为计算机大神3 小时前
易考八股文之Java中的设计模式?
java·开发语言·设计模式
搬砖的小码农_Sky3 小时前
C语言:数组
c语言·数据结构
宅小海4 小时前
scala String
大数据·开发语言·scala