c语言循环控制结构程序,C语言程序设计 循环控制结构.ppt

C语言程序设计 循环控制结构

石家庄理工职业学院 循环控制结构 本讲大纲 引入 For 语句 While 语句 do-while 语句 循环的嵌套 break和continue语句 几种循环的比较 重点与难点 一、重点 1. for 循环 2. while 循环 3. do-while 循环 二、难点 1. 特殊 for 循环 2. break、continue语句 二、引入:吃饭过程示意图 二、引入:吃饭过程示意图 二、引入:吃饭过程示意图 引入:吃饭过程示意图 引入 需要循环结构解决的问题: 一、求 1到n的和 二、求n! 三、猴摘桃问题 猴子第一天摘了一堆桃子,当即吃了一半又一个,以后每天都吃前一天剩下的一半又一个桃子,到第10天,只剩下一个桃子,问候子第一天摘了多少个桃子? 引入 在不使用数学公式的前提下,看一看用顺序结构能 否解决1到n的求和问题。 当 n=5 时,可以写成 s=1+2+3+4+5; 当 n=10时,可以写成 s=1+2+3+4+5+6+7+8+9+10; 当 n 是一个未知数时,写成 s=1+2+3+4+5+…+n-2+n-1+n; 上式只有数学上的意义,C#语言不认可这样的 语句。所以,对于大部分循环问题,顺序结构是解 决不了的。 一、For 语句 1.1 for语句的基本形式 for(表达式1;表达式2;表达式3) 语句; 表达式1:用于给循环控制变量赋初值 表达式2:循环条件,控制循环的结束 表达式3:用于改变循环控制变量的值 语句:可以是复合语句,叫做循环体,当表达 式 2 的结果为真时,语句被执行。 一、For 语句 1.2 for语句 执行流程示意图 一、For 语句 1.2 for语句 执行流程示意图 一、For 语句 1.2 for语句 执行流程示意图 一、For 语句 1.2 for语句 执行流程示意图 一、For 语句 1.2 for语句 执行流程示意图 一、For 语句 1.3 注意点 1. 三个表达式都可以省略,但是 “;” 号不能省略; 例如: for(;i<=n;i++) s+=i; 2. 不能把表达式之间的分隔符”;”,误写成 “,”; 3. 省略了表达式 1,必须在 for 之前初始化循环控制变量 4. 省略了表达式 2,必须在循环体内加入控制循环结束的 语句; 5. 省略了表达式 3,必须在循环体内加入改变循环控制变量值的语句。 6. 三个表达式可以是用 “,” 号分隔的复合表达式。 一、For 语句 1.4 示例 1. 求 1 到 n 的和 一、For 语句 白板: s=1+2+3+….+n -------------------------------------- s=0; s=s+1; s=s+2; s=s+3; …. s=s+k; 一、For 语句 看看代码 int sum(int n) { int k,s=0; for(k=1;k<=n;k++) s+=k; return s; } 一、For 语句 2. 求 n! 一、For 语句 白板: n!=1*2*3*4*….*n ------------------------------------------- n=1; n=n*2; n=n*3 ……. n=n*k; 一、For 语句 看看代码 int fac(int n) { int k,f=1; for(k=1;k<=n;k++) f*=k; return f; } 一、For 语句 3. 猴子摘桃问题 问题: 猴子第一天摘了一堆桃子,当即吃了一半又一 个,以后每天都吃前一天剩下的一半又一个桃子, 到第10天,只剩下一个桃子,问猴子第一天摘了多 少个桃子? 一、For 语句 怎么解呢? 先看看已知条件 1. 猴子摘桃之后吃了 10 天; 2. 猴子每天吃前天桃子的一半,再加上一个桃子 3. 第 10 天只剩一个桃子。 理理思路 能否利用条件2,3 推出第九天的桃子呢?试试 看。设第k天有 xk 个桃子,则由条件2,3得出 x9/2-1=x10 x9=2x10 +2=2*1+2=4 一、For 语句 同理,由条件2,3 推出第 8 天的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值