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语言中是相当重要的一个板块。狮子搏兔尚以全力,注重每一个细节,打好基础,咱们才能走的更远嘛,与诸君共勉!!!

相关推荐
代码中の快捷键3 分钟前
java开发面试有2年经验
java·开发语言·面试
Marzlam4 分钟前
sql server索引优化语句
开发语言·数据库
谢家小布柔9 分钟前
Java 中的字符串
java·开发语言
码老白9 分钟前
【老白学 Java】HashSet 应用 - 卡拉 OK(五)
java·开发语言
sjsjs1124 分钟前
【多维DP】力扣3122. 使矩阵满足条件的最少操作次数
算法·leetcode·矩阵
哲学之窗27 分钟前
齐次矩阵包含平移和旋转
线性代数·算法·矩阵
Code out the future34 分钟前
【C++——临时对象,const T&】
开发语言·c++
Stark、37 分钟前
【Linux】文件IO--fcntl/lseek/阻塞与非阻塞/文件偏移
linux·运维·服务器·c语言·后端
taoyong00138 分钟前
Java线程核心01-中断线程的理论原理
java·开发语言
一雨方知深秋39 分钟前
智慧商城:封装getters实现动态统计 + 全选反选功能
开发语言·javascript·vue2·foreach·find·every