C语言while循环教案钟智君180502.docx
- 文档编号:23274568
- 上传时间:2023-05-15
- 格式:DOCX
- 页数:10
- 大小:98.42KB
C语言while循环教案钟智君180502.docx
《C语言while循环教案钟智君180502.docx》由会员分享,可在线阅读,更多相关《C语言while循环教案钟智君180502.docx(10页珍藏版)》请在冰豆网上搜索。
C语言while循环教案钟智君180502
第五章循环结构程序设计
用while语句实现循环
【课程】:
C语言程序设计
【课题】:
循环结构程序设计
【授课对象】:
职高高二计算机专业学生
【授课时数】:
45分钟
【教学目标】:
认知目标
了解while循环的概念。
熟练掌握while循环的基本用法。
技能目标
能够正确分析问题,并得出解决方案
能够正确使用while循环
能够运用while循环解决一些必要的问题
情感和价值观目标
培养学生分析错误、独立思考、解决问题的能力
让学生学会合理规划生活,做事不断坚持的毅力
【教学重点】:
while循环的基本思想
【教学难点】:
循环到底怎么使用
【教学方法】:
以实践法为主,其他方法为辅,尽量少讲理论性知识,将原理更简单的交给学生。
【教学步骤】:
1、复习引导
2、讲授新课
3、示例训练
4、课堂总结
5、作业布置
【教具】:
黑板、粉笔、多媒体
【使用教材】:
《C程序设计》第四版谭浩强著
清华大学出版社
【教学过程】:
1、复习引导
全班有30个学生,统计各学生三门课的平均成绩。
输入学生1的三门课成绩,并计算平均值后输出
要:
scanf(“%f,%f,%f”,&s1,&s2,&s3);
aver=(s1+s2+s3)/3;
printf(“aver=%7.2f”,aver);
从键盘输入一个小于100的正整数,要求输出它的平方根.(若平方根不是整数,则输出其整数部分)
要求:
在输入数据后先对其进行检查是否为小于100的正整数。
若不是,则要求重新输入。
#include
#include
#defineM1000
intmain(){
inti,k;
printf("请输入一个小于%d的整数i:
",M);
scanf("%d",&i);
if(i>M){
printf("输入数不合要求,请重新输入一个小于%d的整数i:
",M);
scanf("%d",&i);
}
k=sqrt(i);
printf("%d的平方根的整数部分是:
%d\n",i,k);
}
思考:
如果连续两次都输入错误呢?
if(i>M)能不能重复判定,直到满足i>M才退出呢?
2、讲授新课
while语句的一般形式如下:
while(表达式)语句
当条件表达式为“真”时执行循环体语句,为“假”时不执行
先判断表达式是否为真;若表达式为真,执行语句,直到表达式为假; 若表达式为假,则跳出循环。
例:
全班有30个学生,统计各学生三门课的平均成绩。
i=1;
while(i<=30)
{scanf……;
aver=……;
printf……;
i++;
}
while循环特点:
v特点:
先判断表达式,后执行循环体
v说明:
1、循环体可为任意类型语句
2、下列情况,退出while循环:
●条件表达式不成立(为零)
●循环体内遇break,return,goto
3、无限循环:
while
(1)
循环体;
注意事项:
1.如果循环体包含一个以上的语句,那么应该用复合语句“{}”的形式。
例如,程序段1:
sum=i=0;
while(i<10)
++i;
sum+=i;
程序段2:
sum=i=0;
while(i<10)
{++i;
sum+=i;
}
想一想执行程序段1和程序段2后i、sum的值?
2.在循环体中应有使循环趋于结束的语句。
程序段1:
i=1;
sum=0;
while(i<10)
{sum+=i;
++i;
}
考虑以下while循环的执行情况:
程序段2:
i=1;
sum=0;
while(i<10)
sum+=i;
与if语句比较:
if(条件){
条件成立时执行的语句;
}
两者格式基本相同,条件成立时,if语句仅执行一次,
而while语句则将反复执行,直到条件不成立为止。
例:
用while语句实现求从1到100的累加和。
sum=1+2+3+...100
分析:
1)sum=(1+100)*50
2)定义变量i
i=1,i=2…i=100
3)sum=sum+i
思考:
画出该题的流程图
#include
main()
{inti,sum=0;
i=1;
while(i<=100)
{sum=sum+i;
i++;
}
printf("%d",sum);
}
3、示例训练
1、编程计算1~10的平方和
#include
执行过程
isum
10+1*1=1
21+2*2=5
35+3*3=14
414+4*4=30
530+5*5=55
655+6*6=91
791+7*7=140
8140+8*8=204
9204+9*9=285
10285+10*10=385
11
main()
{inti=1,sum=0;
while(i<=10){
sum+=i*i;
i++;
}
printf(“sum=%d”,sum);
运行结果:
sum=385
}
2、程序阅读
main()
{floatscore,sum=0;
inti=1,count=0;
while(i<=50)
{printf(“inputascore:
\n”);
scanf("%f",&score);
sum+=score;
if(score<60)
count++;
i++;
}
printf(“sum=%10.2f,count=%d\n",sum,count);
}
4、课堂总结
1)while语句先判断后执行循环语句。
2)while语句中的语句部分若为简单句可不用{}。
3)while语句的循环体中应有趋于结束的条件。
4)对于while循环而言,若表达式不成立语句部分一次也不被执行。
5、作业布置
1>编写程序计算下列算式的值:
直到某一项A<=0.000001时为止。
输出最后C值。
2>从键盘输入正整数n,求n!
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 while 循环 教案 钟智君 180502