当前位置:首页 >> 工学 >>

3_2 循环结构程序设计1_图文


循环结构程序设计
教学内容 1 while语句 while语句 do-while语句 2 do-while语句 for语句 3 for语句 4 循环的嵌套 5 综合实例

循环结构程序设计
特点:有限次的重复某个操作。 特点:有限次的重复某个操作。 语言中,引入while while语句 do-while语 在C语言中,引入while语句 、do-while语 for语句循环结构来处理此类问题 语句循环结构来处理此类问题。 句和 for语句循环结构来处理此类问题。 While结构 结构: 1 While结构: (条件表达式 条件表达式) While (条件表达式) 语句序列; 语句序列;

例1:求1+2+3……+10 1:求1+2+3 +10
开始 S=0;i=1 i<=10? Y S<=S+i i i+1 N

(ch6_001A) )

Void main() {int S=0,i=1; while(i<10) {S=S+i; i++; }

输出S 输出S的值 结束

1 while语句 语句
例1:(ch6_001A) ch6_001A) S=0;i=1; While(i<10) { S=S+i; i++; }
循环体 对循环控制变量的修正 循环控制条件, 循环控制条件, i为循环控制变量 为循环控制变量

1 while语句 语句
循环结构的三个术语: 循环结构的三个术语: 1、循环条件:循环结构中的条件表达式如 循环条件: (i<10)其中 i<10就是循环条件 其中, 就是循环条件。 while (i<10)其中,i<10就是循环条件。 条件表达式非0 就做一次循环体。 条件表达式非0,就做一次循环体。 循环体: 2、循环体:在每个循环周期均要执行一次 的语句序列。 while下用 }括起来的 下用{ 的语句序列。如while下用{ }括起来的 语句序列。 语句序列。 循环控制变量: 3、循环控制变量:能够决定控制条件是真 是假的量。 是假的量。

1 while语句 语句
要写出一个正确的循环结构, 要写出一个正确的循环结构,对控制变量要做 三方面的工作: 三方面的工作: 对循环控制变量赋初值。 1、对循环控制变量赋初值。 将循环控制变量写入正确的控制条件。 2、将循环控制变量写入正确的控制条件。 对循环控制变量值的更新。 3、对循环控制变量值的更新。 如: s=0;i=1; /* 给x赋初值 */ 赋初值 while(i<10) /*条件 条件*/ 条件 {s=s+i; i++; /*对x的值做更新、调整 的值做更新、 对 的值做更新 调整*/ }

练习1: 练习 :求n! 练习2: 以内的奇数和、 练习 :求100以内的奇数和、偶数和。 以内的奇数和 偶数和。

2 Do…while语句 语句
While语句表达的是“当满足条件的时候, While语句表达的是“当满足条件的时候,做 语句表达的是 某事” 某事” Do…while语句表达的是“做某事, while语句表达的是 Do while语句表达的是“做某事,直到不满 足条件的时候为止” 足条件的时候为止” Do…while 结构: Do while 结构: Do {语句序列;} 语句序列; (条件表达式 条件表达式) While (条件表达式)

2 Do…while语句 语句
例1 CH6_001B: : s=0;i=1; do {s=s+i; i++;} while (i<=10)

S=0;i=1; While(i<=10) {S=S+i; i++; }

While与do-while的比较: 与 的比较: 的比较 后面的表达式一开始就为假的时候, 当while后面的表达式一开始就为假的时候, 后面的表达式一开始就为假的时候 while结构的循环体一次也不做,而do_while的 结构的循环体一次也不做, 结构的循环体一次也不做 的 循环体要做一次。 循环体要做一次。

2 Do…while语句 语句
例2:从键盘输入任意字符,直到输入‘!’时 从键盘输入任意字符,直到输入‘ 时 结束,并统计字符的个数(不包括‘ 结束,并统计字符的个数(不包括‘!’) ch6_002A使用while结构,ch4_002B使用 while结构 (ch6_002A使用while结构,ch4_002B使用 do-while结构 ch4_002C使用for结构 结构, 使用for结构) do-while结构, ch4_002C使用for结构)

/* ch6_002A 用while语句实现 语句实现 #include "stdio.h" main() {char c; int n=0; while(getchar()!='!') n++; printf("n=%d\n",n); } 

/* ch6_002B 语句实现*/ 用do while语句实现 语句实现 #include "stdio.h" main() {char c; int n=0; do { n++; } while(getchar()!='!'); printf("n=%d\n",n); }

3 for循环 循环
C语言中for循环能更好地体现循环的上述 语言中for循环能更好地体现循环的上述 for 三个要点:(循环控制变量的初始化 :(循环控制变量的初始化、 三个要点:(循环控制变量的初始化、循 环控制条件 循环控制变量的更新 条件、 更新) 环控制条件、循环控制变量的更新) for结构: for结构: for(初始化表达式;条件表达式2;修正表达式) 初始化表达式;条件表达式 ;修正表达式) 初始化表达式 { 循环体 }

3 for循环 循环
例如;上述求累加和的程序段可改写为用 例如;上述求累加和的程序段可改写为用for 结构完成,结构显得更为紧凑(ch6_001C) 结构完成,结构显得更为紧凑
给循环控制变量和相关变 量赋初值

循环条件

for(i=1,s=0;i<=10;i++) s=s+i;
循环体 给循环控制变量进 行修正

3 for循环 循环
几点说明: 几点说明:

1、表达式1和表达式 可为逗号表达式 如 、表达式 和表达式 和表达式3可为逗号表达式 for (i=0, j=1 ; j<n && i<n ; i++, j++) 2、若表达式1里的循环控制变量已经有初值,则表达式 、若表达式 里的循环控制变量已经有初值 则表达式1 里的循环控制变量已经有初值, 可省略。若循环体语句中有循环控制变量的修正语句, 可省略。若循环体语句中有循环控制变量的修正语句, 可省略表达式3。 可省略表达式 。 for (i=1,s=0; i<=10; ) 如 , { s+=i; i++; } 3、省略表达式 ,则为死循环,除非在语句中有条件用 、省略表达式2,则为死循环, break, return, goto, 或exit( )函数。 函数。 函数

3 for循环 循环
例2:从键盘输入任意字符,直到输入‘!’时 从键盘输入任意字符,直到输入‘ 时 结束,并统计字符的个数(不包括‘ 结束,并统计字符的个数(不包括‘!’) 使用for结构) for结构 (ch6_002C 使用for结构)
#include "stdio.h" main() {int n; for(n=0;getchar()!='!';n++) ; printf("n=%d\n",n); }

循环结构应用
pi的近似值 的近似值。 CH6_003) 例3: 求 pi的近似值。(CH6_003) Pi/4=1 1/3+1/5-1/7……,直到最后一项的 Pi/4=1-1/3+1/5-1/7 , 绝对值小于0.000001 为止。 绝对值小于0.000001 为止。

#include <stdio.h> CH6_003 #include <math.h> void main() { int s; float n,t,pi; t=1;pi=0;n=1.0;s=1; while (fabs(t)>1e-6) { pi=pi+t; n=n+2; s=-s; t=s/n; } pi=pi*4; printf("pi=%10.6f\n",pi); } 

循环结构应用
例4:猜数游戏(ch4_015) 猜数游戏(
编写一道猜数的程序, 编写一道猜数的程序,在程序中预设 一个数字, 一个数字,要求用户任意从键盘输入 一个价格(数字), ),由程序在屏幕上 一个价格(数字),由程序在屏幕上 给出“高了”或者“低了”的提示, 给出“高了”或者“低了”的提示, 当用户输入数字等于目标数, 当用户输入数字等于目标数,程序结 束。

开始
输入一个数字data 输入一个数字data
Y 输出提示信息: 输出提示信息: 高了, 高了,请重新输入

Data>goal?
Y

N

Data<goal? N
输出提示信息: 输出提示信息: 恭喜你答对了

输出提示信息: 输出提示信息: 低了请重新输入

Y

Data不等于goal? Data不等于goal? 不等于 N

结束

循环结构应用
#define GOAL 648 /*例4:猜数游戏。 ch6_004 */ 例 :猜数游戏。 #include <stdio.h> main() { int data; do { printf("Please input data:\n"); scanf(“%d”,&data);/*输入任意一个数字到 输入任意一个数字到data*/ 输入任意一个数字到 if (data>GOAL) printf("It's too big,please try again!\n"); else if(data<GOAL) printf("It's too small,please try again!\n"); else printf("You are right!Bye-bye!"); } while (data!=GOAL); }

循环结构作业(第1部分)
Xunhuan01: 求两个正整数的最小公倍数 Xunhuan02: 任意输入一个正整数,将它 逆序打印出来。如:输入12345,则输出 54321,输入234,则输出432。 Xunhuan03:下面的公式可以用来计算圆周 Xunhuan03 率PI的近似值: PI/8=1/(1*3)+1/(5*7)+1/(9*11) +…… 请编程序计算公式的前15项,看PI的 近似值是多少 n个a Xunhuan04:求Sn=a+aa+aaa+aaaa……, 其中a是一个数字,n由键盘输入。


相关文章:
3_2 循环结构程序设计1_图文.ppt
3_2 循环结构程序设计1 - 循环结构程序设计 教学内容 1 while语句
第3-2章 循环结构程序设计_图文.pdf
程序的三种结构:顺序结构 选择结构 循环结构 华中科技大学光电学院C语言程序设计 §3.3 本章内容(一) 循环语句(个) ? while ? do while ? for (二)...
循环结构程序设计1_图文.ppt
if语句与goto语句 2. while 语句 3. do …while 语句 4. for语句 第五章 循环结构程序设计 5.1 while语句 while语句通过判断循环控制条件是否满足来决定是 ...
第四章 循环结构程序设计1_图文.ppt
第四章 循环结构程序设计 循环就是在给定的条件成立...29 循环结构程序示例一要求: 用while循环求1+2+3...
第五章 循环结构程序设计(1)_图文.ppt
第5章 循环结构程序设计 5.1 5.2 5.3 5.4 5.5 5.6 5.7 用goto 语句循环结构 while语句 do-while语句 for语句 循环嵌套结构 循环结构中使用break和...
05 循环结构程序设计(1)_图文.ppt
05 循环结构程序设计(1) - 第四讲 循环结构程序设计() 三种循环语句 1 3.3.1、while语句 (※) 1、语法: while ( 表达式 ) 循环体语句 ?...
项目4 循环结构程序设计1_图文.ppt
100? 真把 i累加到 sum中 i加 1 输出 sum的值 结束 求1+2+3+?+100流程图 项目4 循环结构程序设计 3.源程序Ex4-1.c #include <stdio.h> void main...
C语言第5章循环结构程序设计1_图文.ppt
第四章 循环结构程序设计§4.1 概述开始 前面已介绍了顺序结构,选择结 构,本....3 用do-while语句求1至1000之间满足“用3除余2, 用5除余3,用7除余2”...
第5章 循环结构程序设计 (1)_图文.ppt
第5章 循环结构程序设计 (1) - 第5章 循环结构程序设计 5.1 为什么需要循环控制 5.2 用while语句实现循环 5.3 用do---while语句实现循环 5.4 用for 语句...
第3章 循环结构程序设计_图文.ppt
3循环结构程序设计 - 第3章 章 循环结构程序设计 3.1 循环语句概述 3.2 for语句和 语句和while语句 语句和 语句 3.3 直到型循环 直到型循环do-while...
循环结构程序设计_图文.ppt
循环结构程序设计 - C 语言程序设计 第5章 循环结构程序设计 本章主要内容 ? 2 ? ? ? ? ? ? while循环控制 do-while循环控制 for循环控制 用go...
第一讲 循环结构程序设计_图文.ppt
循环结构程序设计_IT认证_资格考试/认证_...=1*2*3*4*…*10 算法分析 (1)1*2*3*……...
第五章 循环结构程序设计1_图文.ppt
第五章 循环结构程序设计1 - 第五章 循环结构程序设计 内蒙古科技大学实训中心 循环结构的概念 例1:求1+2+3+……+9+10的和 : 的和 利用计算机重复处理某些...
第04章 循环结构程序设计1_图文.ppt
用goto语句和if语句构成循环; 2. 用while语句; 3. 用do--while语句; 4. 用for语句。第四章 循环结构程序设计 S=1+2+3+…+100 1 S S+1 S+2 S+...
新_第5章 循环结构程序设计_1_图文.ppt
新_第5章 循环结构程序设计_1 - 第5章 5.2 5.4 循环结构程序设计 5.1 while语句 do-while语句 break语句、continue语句和goto语句 5.3 f...
实验三 循环结构程序设计(答案)_图文.doc
实验 循环结构程序设计(答案) - 实验教案 课题(项目)名称: 实验 循环结构程序设计 实验类型: 1.演示性√ 授课日期: 一、实验目的 (1) 掌握 while、do~...
第4章 循环结构程序设计(1) 2_图文.ppt
第4章 循环结构程序设计(1) 2 - ? 第六章 C#的继承机 ? 第一章 C# 语言概述 制 和开发环境 ? 第七章 数组及自定义 ? 第章 C#语法基 数据类型 础...
第05章 循环结构程序设计(1-1)_图文.ppt
第5章 循环结构程序设计 5.1 循环结构的程序设计 5.2 循环嵌套 5.3 跳转语句 5.4 循环结构程序综合举例 循环结构是程序的三大基本结构之一, 循环结构是程序的...
(第五章)循环结构程序设计_图文.ppt
(第五章)循环结构程序设计 - 模块5 循环结构 程序设计 目录 成绩管理中数据的批量处理与统计 假设学生成绩表如下: no 1 2 3 4 5 6 7 8 9 10 name 刘...
C语言循环结构程序设计1_图文.ppt
C语言循环结构程序设计1 - 第6章 循环结构程序设计 1 循环的引出 2 循环结构算法设计 3 while语句 4 do…while语句 5 for语句 6 break和continue语句 ...