C语言程序设计教案 第六章 循环程序设计由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“循环结构程序设计教案”。
第六章 循环程序设计
课题:
教学目的: 教学重点: 教学难点: 第五章 选择结构程序设计
1、掌握三种循环语句的语法结构
2、灵活运用循环语句
三种循环语句while、do-while、for 三种循环语句的区别
步骤一 引入新课
问题1:假如全班41人,欲从键盘上输入每人的数学成绩,然后计算出平均成绩; 问题2: 编程计算n!。
重复执行一组语句是程序设计要求的基本功能之一。在C语言中可以用以下语句来实现循环:(1)if 和 goto
(2)while
(3)do-while
(4)for
步骤二 讲授新课
一、goto语句及用goto构成循环 语法:goto label; 其中:label是语句标号,它命名的规则同变量名; 语义:使程序无条件地转向标号为label的语句去执行; 如:用if语句构成循环,求sum=1+2+…+100
main()
{ int i=1,sum=0;
loop:
if(i
{sum+=i;i++;goto loop;}
printf(“%d”, sum);
} 说明:
1)标号不必进行类型说明;
2)程序中的任何一个语句均可带上标号,但标号必须以冒号结束; 3)不提倡使用goto语句。
二、while语句
语法:while(exp)
循环体语句;
语义:当exp为真时,执行循环体;为假时,执行循环语句的后续语句; 如:用while语句构成循环,求sum=1+2+…+100
程序如下:main(){ int i=1, sum=0;
while(i
{ sum+=i;
i++;}
printf(“%d”,sum);} 说明:
1)循环体可以用复合语句;
2)在while语句前应有为测试表达式(exp)中的循环控制变量赋初值的语句,以确保循环的正常开始;
3)循环体内应有改变循环控制变量的语句,以确保循环进行有限次后正常结束;
如:i=1;
while(i
sum=sum+1;(死循环)
4)while 循环的特点是先判断后执行,故循环有可能一次都不被执行;
如:
i=3;
while(i
printf(“i=%dn”, i);
三、do-while语句 语法:do
循环体语句;
while(exp);语义:当exp为真时,执行循环体;为假时,执行循环语句的后续语句; 如:用do-while语句构成循环,求 sum=1+2+…+100 程序如下:main(){ int i=1,sum=0;
do
{ sum+=i;
i++;}
while(i
printf(“%d”,sum);}
说明:
1)循环体可以用复合语句;
2)循环控制变量在执行do前必须赋初值;循环体内应有改变循环控制变量的语句; 3)do-while 循环的特点是先执行后判断,故循环至少被执行一次;
如:i=3;
do
{ sum+= i;
i++;
} while(i>10);例1:用公式求π的近似值,直到最后一项的绝对值小于10-6为止。π/4≈1-1/3+1/5-1/7+……
# include main(){ int s=1;float n=1.0, t=1, pi=0;
while((fabs(t))>1e-6)
{ pi=pi+t;n+=2;
s=-s;t=s/n;
}
pi=pi*4;
printf(“pi=%10.6fn”,pi);}
例2:求整数a和b的最小公倍数。#include main(){ int a,b, i;scanf(“%d%d”,&a,&b);
i=0;while(1)
{ i++;
if(i%a= =0)
if(i%b= =0){printf(“%dn”, i);break;}
} }
思考:有一张足够大的纸,厚0.09毫米,问将它对折多少次后可以达到珠穆朗玛峰的高度(8848米)?
四、for 语句
语法:for(表达式1;表达式2;表达式3)
循环体语句; 语义:
1、先求表达式1;
2、求解表达式2,若其值为真,则执行第三步;若为假,则结束循环;
3、执行循环体中的语句;
4、求解表达式3;
5、转回第二步继续执行 如: for(i=1;i
for(循环变量赋初值;循环条件;循环变量增值)语句;
说明:
(1)显然for循环更简洁,更灵活;(2)循环体可以是复合语句;(3)for语句中的三个表达式均可以是逗号表达式,故可同时对多个变量赋初值及修改。如:for(i=0, j=1;j
(4)for语句中三个表达式可省:
省exp1;如:i=1;for(;i
printf(“%dn”,i);
等价于for(i=1;i
{ printf(“%dn”, i);
if(i>5)break;
} 省exp3;如:for(i=1;i
{ printf(“%dn”,i);
i++;} 等价于 for(i=1;i
printf(“%dn”,i);
表达式
1、表达式3可省略
i=1;sum=0;for(;i
三个表达式全省时,如:
for(;;)语句;
等价于while(1)语句;
三个表达式可包含与循环变量无关的语句
for(;(c=getchar())!=„n‟;printf(“%c”,c));
(5)for语句中的循环体可以是空语句;如:
int n=0;for(;n++
该程序段的输出结果为:4
步骤三 课堂小结
1、while、do-while、for语句的语法结构,特别是for语句中三个表达式的作用
2、whie与do-while区别
3、注意循环控制的范围
步骤四 布置作业 上机练习:(第六章课后练习)6.2 书面练习:(第六章课后练习)6.3、6.5
教学内容:循环结构程序设计 教学课时:2课时 【教学目的】1、循环的基本思想2、while、do-while和for3、三种语句特点4、孰能生巧 【教学重点】 三种循环语句的使用。 【教学难......
循环结构程序设计教案 学科:计算机课题:循环结构程序设计 课型:理论课 授课对象:高二、二班 课时:一课时 授课教师:陈平一、教学目标:1、知识目标理解循环结构的基本思想,通......
《C语言程序设计》教案使用教材:谭浩强,《C程序设计》,清华大学出版社,2005年7月第3版 任课教师:王琪 授课班级:信息科学与技术学院06(1) 授课时间:06年秋学期 课时安排:第一学期每......
C语言程序设计教案课程名称:C语言程序设计总 学 时:51(其中讲课学时:36,上机学时:15) 课程类型:必修课程 专业:06气候教 材:《C程序设计》(第三版),谭浩强,清华大学出版社,2005.教学参考书:1......
上机作业31.2.3.4.5.6.7. 用3种循环计算自然数1~10之和。 用3种循环计算1*2*3*。。。。。。*10 。 用3种循环计算10000以内能被3整除的数之和。 用3种循环计算 1+1/2+1/3+1/4+。。。......