资源预览内容
第1页 / 共22页
第2页 / 共22页
第3页 / 共22页
第4页 / 共22页
第5页 / 共22页
第6页 / 共22页
第7页 / 共22页
第8页 / 共22页
第9页 / 共22页
第10页 / 共22页
亲,该文档总共22页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
c语言基础 For循环语句 1 5 1 1 FOR循环的引入2 FOR循环语句的形式3 表达式缺省的FOR循环语句4 含有逗号运算符的FOR循环语句5 关于FOR循环的几点补充说明5 FOR循环语句的嵌套 一 FOR循环的引入 1 复习前两节课我们学习的循环语句 while do语句的基本格式和执行过程和特征 main intx 1 表达式 s 0 while x 100 表达式2 s s x x x 1 表达式3 printf d s 分析用while语句来完成的程序 主要完成1到100的累加和 对一个循环程序来说最关键的三个部分 循环变量的赋初值 控制循环条件 循环控制变量的更新 二for循环语句形式 C语言中的for循环语句比较复杂些 也比较灵活 功能较强 虽然主要用于定数循环 但也可以用于不定数循环 它完全可以替代while循环 for循环语句的一般形式 for 表达式1 表达式2 表达式3 循环体 4 for 表达式1 表达式2 表达式3 循环体 设置循环变量初值 判断表达式 循环变量增值 5 例 求100之内各数之和 includeintmain inti sum 0 for i 1 i 100 i sum i printf 1 2 100 d sum return0 ch5 5 1 c 单条语句时 大括号可以不要 6 例 把100 200之间的不能被3整除的数输出 main intn for n 100 n 200 n if n 3 0 continue 能被3整除的数 不打印 printf 5d n 当然函数体也可改成 if n 3 0 printf d n 使用Continue仅是为了说明其的语法作用 7 三 说明 表达式缺省的for 语句 for 语句中的三个表达式可以省略其中一个 二个 甚至三个 但无论省略几个 其中的二个分号不能省 如果在for语句之前 给循环变量已赋值 表达式1可省去 分号不能省 如 sum 0 i 1 for i 100 i sum sum i 表达式1可省去 8 2 如果表达式2省略 C编译程序认为其值恒为真 无限循环下去 如 for i 1 i sum sum i 1 表达式3也可省去 如 for i 1 i 100 sum sum i i 可把变量增值部分放在循环体内 表达式3可省去 表达式2可省去 9 例 voidmain inti 1 sum 0 for sum i i if i 10000 break 这种无限循环可用break语句来终止循环 避免产生死循环 3 甚至三个表达式都可省略 for 语句 10 补充 逗号运算符 顺序运算符 级别最低的一种 用它将二个表达式联起来 形成逗号表达式 如 表达式1 表达式2 例 a 3 5 a 4先求解3 5 得a的值为15 然后求解第二表达式a 4 得60 求解过程是 先求解表达式1 再求解表达式2 整个逗号表达式的值用表达式2的值代表 逗号表达式 11 一般形式还可扩展 表达式1 表达式2 表达式n整个表达式的值用表达式n的值代表 注 a 在很多情况下 使用逗号表达式的目的只是想得到 计算 各个表达式的值 并非一定要得到或使用整个表达式的值 b 并不是任何出现逗号的地方都是逗号运算符 如 printf d d d a b c 其中的这些逗号就不是 12 四 含逗号运算符的for语句for语句中 表达式1 表达式3可以使用逗号运算符 如 for i 1 j 20 i j i j 用两个或两个以上的变量共同实现对循环的控制 13 例输入不多于10个实数 求这些数的和及其中正数之和 若不足10个数 以0为结束标志 include includeintmain floatsum psum x inti 1 14 for sum psum 0 0 i 0 i 10 i scanf f 若输入为0 结束 输入小于0不累加 注意这个表达式 ch5 5 4 c 15 五 对于for语句的进一步说明 1 表达式1可以是设置变量初值的赋值表达式 也可是与循环变量无关的其它表达式 如 for sum 0 i 100 i sum sum i 2 表达式2一般是关系表达式或逻辑表达式 但也可以是其它类型表达式 只要其值为非零 就执行循环体 如 for i 0 c getchar n i c 不断输入字符 将ASCII码累加 直到输入一个换行符 16 3 for循环的条件检查总是在循环开始前进行的 如果一开始条件为假 为零 则循环一次也不执行 voidmain intx y 10 for x 10 x 10 y printf d y printf d x 一开始条件就为假 17 4 当for语句的循环体是空语句时 则成为空循环体的for语句 利用它可以实现某些特殊功能 比如产生时间延迟等 如下例 for t 0 t value t 空循环体 18 六 循环嵌套 for语句一般用于具有明确循环次数的情况 如果事先不知道准确的循环次数 只知道循环条件 一般用while或dowhile语句 循环是可以嵌套的 循环嵌套是指一个循环体内又可包含另一个完整的循环称为循环嵌套 里面的循环又可嵌套另一个循环 叫多层循环的嵌套 19 已知的三种循环 while do while for 可以相互嵌套 如 while for dowhile while 注 但循环嵌套不允许交叉 20 例 问程序输出的结果 main inti 1 a 0 for i 5 i do i a while i 3 i printf a d i d n a i 输出 a 3 i 8 21 本节内容已授完 22
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号