C语言学习4——循环结构

本文介绍了C语言中的循环结构,包括条件控制循环(如钥匙开门的例子)和计数控制循环(如密码输入),并以for、while和do-while为例详细讲解了它们的语法结构、累加运算和终止条件。
摘要由CSDN通过智能技术生成

我们在学习循环以前我们先思考一下,我们生活的哪些部分用到了循环,或者是又是说,循环出现在了我们生活中的那些地方?

例如:

       地球围绕太阳公转5圈            【次数:5圈】

       打印机打印N张word文档      【次数:N张】

       发动机的转动             【次数:未知数】

而我们在C语言中也也是如此,循环也是有限次数循环和无限次数的循环。那么,我么们应该如何控制循环的结束?那么我来告诉你们:控制循环结束的方式有两种:一种针对次数不明确的条件控制循环,一种针对次数明确的计数控制循环。那么我来据一些例子来帮助大家来理解这些比较晦涩难懂的概念。

       首先是我们的条件控制循环,要先了解条件控制循环的特点,那么它的特点就是:由一个给定条件,控制循环结束的循环结构。举个生活中的个例子就是,如果我们10把钥匙,但是只有一把钥匙能打开,那么我们便要一把一把地去尝试打开这扇门。

       其次我们来了解一下技术控制循环以及它的特点。计数控制循环的特点:有举个明确的次数,控制循环结束的循环结构。举个生活中的个例子便是我们密码的输入,比如说我们在进行手机解锁时是有限次你输入错误密码的次数,比如说超过3次就锁定手机30秒之类的等等。

       在了解两种循环以后我们要知道如何使用它,话不多说,我们先了解一下它的句法结构,首先我们要先了解它最基本的累加运算。在此以前我们要先思考三个问题:

  1. 循环如何执行?
  2. 如何实现累加运算?
  3. 如何保证循环可终止?

我将举几个例子帮助大家学习理解(如图所示):

可见这个是一个非常简单的for循环示例。x 设置为零,而 x 小于 6 时,它调用 printf 来显示变量 x 的值,并且 1 加到 x,直到满足条件。此外我们要知道变量是在循环中的代码首次运行后递增。

在了解简单的循环以后我们来了解一下如何实现累加的运算(如下图所示):

我们用数学归纳法,对问题进行数学建模 ,将问题求解方法抽象为公式假设前i--1个数的和,已经计算完毕是sumi-1,则只需进行一次加法运算sumi=sumi-1+ni (将其表示为递推过程是:sumi=sum(i-1)+ni,求和,所以初始值sum0=0)上图中我们要了解其中的六个小的组成for循环的因素:

    1. 计数控制(增量变化)   计算器计数:i=i+1
    2. 循环体                                sum=sum+n
    3.  循环初值                           sum=0,i=1
    4. 循环控制条件(结束条件)  i<=5   (i<6)

那么理解并掌握以上几点你也就掌握了for的基本用法。

其次循环还有while和do while的循环

While

我们先输入以下代码:

编译并运行它。输出应如下所示:

那么我们就可以理解到其作用:当执行 while 语句时,i 小于或等于 10,则执行 while 后面的语句。然后将 i 递增 1。然后我们回到 while 再次测试。同样,2(在i递增到该值时)小于或等于 10,将会再次执行。而这就是一个 while 循环。最终当,i 将递增到值 11 时,程序将会检查失败然后停止循环然后进入到下一个语句。

接着我们开始认识do while的语句,首先我们要了解do while句法是这样的:

值得请注意的是,该条件是在末尾进行检查的,而不是在开始的地方,所以该循环将至少执行一次。如果条件是“真”,我们跳回块的开头并再次执行它。一个do while 循环与 while 循环几乎相同,只是do while循环主体是保证至少执行一次。while 循环是在条件为“真”的时候才执行此代码。而do while循环实在执行此代码以后,然后再判断条件为 “真”。接着我们来一个简单的do while来帮助大家理解:

那么到这里我们便结束今天的循环学习,其余的小知识点我还是放在后面的思维导图里了,各位可自行观阅,谢谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值