C语言程序设计教案.docx
- 文档编号:26730374
- 上传时间:2023-06-22
- 格式:DOCX
- 页数:20
- 大小:19.77KB
C语言程序设计教案.docx
《C语言程序设计教案.docx》由会员分享,可在线阅读,更多相关《C语言程序设计教案.docx(20页珍藏版)》请在冰豆网上搜索。
C语言程序设计教案
C语言程序设计教程—For语句
概述
课程名称:
C程序
本课内容:
For语句
授课单位:
垫江一职中
授课对象:
高二学生
授课时间:
40分钟
一、教学目标
通过本节40分钟的教学,让学生学习另一种循环语句—For语句,认识For语句与其它循环语句之间的联系和区别,学会利用For语句解决基础的实际问题,掌握For语句的一般格式和执行过程。
二、教学重点
For语句的一般格式
For语句的执行过程
For语句的基本特征
三、教学难点
For语句的综合利用
四、教学方法
1、课堂讲授,给出主要内容。
2、讲解其基本格式。
3、应用示例,结合相应的专业知识。
(讲解法)
4、执行过程用流程图和例题用(演示法和讲解法)进行详细说明。
5、基本特征根据例题利用(讲解法、边讲边练教学法、问答法)进行解剖。
五、教学过程
一、导入(暗示法)3分
1、前两节课我们学习了两种循环语句-while语句do语句,相信大家对它们的基本格式和执行过程和特征都了如指掌,首先让我们来看一个例子,进行回顾一下。
2、给出例子如下:
Main()
{intx=1;(表达式1)
s=0;
While(x<=100)(表达式2)
{s=s+x;
x=x+1;(表达式3)
}
printf(“%d”,s);
}
这是一个用while语句来完成的程序,主要完成1到100的累加和,对一个循环程序来说最关键的三个部分:
循环变量的赋初值、控制循环条件、循环控制变量的更新,上面的例子大家应该很清晰得看出利用While语句来实现这三个关键要在不同的部分才能实现,有没有一种语句可以让三个部分写在同分位置,让读者更加清晰,明了,那么今天让我们一起来学习这种语句-for语句。
请大家翻到书110页。
二、教学进程
教学要求
写出本节课要介绍的for语句
掌握:
基本格式和各个表达式的功能和特征
掌握:
for语句的执行过程
教学要求
理解:
while语句与for语句形式的转换
理解:
for语句在对其表达式的省略
了解:
对表达式1和表达式3的说明
了解:
对表达式的说明
对for语句的综合利用
教学内容
For(表达式1;表达式2;表达式3)语句
For(表达式1;表达式2;表达式3)语句
Main()
{intx=1;(表达式1)
s=0;
While(x<=100)(表达式2)
{s=s+x;
x=x+1;(表达式3)
}
printf(“%d”,s);}
表达式3
语句
求解表达式1
表达2
语句
for语句下一条语句
假
真
教学内容
例2:
Main()
{intx,y=0;
For(x=100;x>=1;x--)
If(x%3==0)
y=y+x;
printf(%d”,y);
}
说明:
第一步:
执行x=100;
第二步:
判断x>=1?
第三步:
当为真则执行y=y+x;
第四步:
x—;
第五步:
回到第二步如果为真,则重复执行3、4两个步骤。
如果条件为假则跳出循环,执行语句printf(%d”,y);
表达式1 for(表达式1;表达式2;While(表达式2) 表达式3)语句
{表达式3
语句}
例3:
Main()
{intt=1,i=2;
While(i<=5)
{t=t*i;
i++;}
printf(“%d\n”,t);}
① 省略表达式1:
for(;i<=100;i++)
sum=sum+i;
② 省略表达式2:
for(x=1;x++)
sum=sum+x;
③ 省略表达式3:
for(x=1;x<=100)
sum=sum+x;
④ 省略表达式1,表达式3
for(;x<=100)
sum=sum+x;
⑤ 表达式1、2、3全省
For(;;)
(不赋初值,没有循环控制条件,也没有变量的更新,这种适用菜单选择)
For(sum=0;x<=100;x++)
For(sum=0,i=1;i<=j;i++,j--)
k=i+j;
注:
sum=0,i=1为逗号表达式
同时在表达式1中对循环无关控制变量的赋初值。
⑴ for(i=1;i<=100;i++) (关系)
sum=sum+i;
⑵for(i=0;(c=getchar())!
=’\n’;i+=c)(字符)
⑶for(i=1,j=2;i>0&&j<4;i--)(逻辑)
⑷for(i=1;1;i++) (数字)
举例求输出三个字符A
分别请4位同学对其程序进行补充。
① mian()
{intx;
_________;
For(;x<=3;x++)
Printf(“A”);
}
② mian()
{intx;
For(x=1;x++)
{__________;
Printf(“A”);
}
}
③mian()
{intx;
For(x=1;x<=3;)
{Printf(“A”);
__________;
}
}
④mian()
{intx;
__________;
For(;;x++)
{__________;
Printf(“A”);
}
}
提醒:
省略表达式2可用break提前结束循环语句
表达方式与讲解备注
板书:
for语句的基本格式
让学生有个初步的认识和印象
强调:
for语句中的所有表达式和while语句中的表达式所完成的功能是相同的。
表达式1:
循环变量的初始化
表达式2:
循环条件
表达式3:
循环变量自增
板书:
表达式1、2、3
给出流程图,根据结构特征对其执行过程进行讲解。
过程进行讲解:
① 首先第一步求解表达式1
② 然后进入表达式2进行循环条件判断
③ 如果条件为真则执行语句
④ 再执行语句
⑤ 返回②再次进行判断,如果条件为真则重复执行③④
⑥ 如果条件为假则结束for循环,执行它的下一条语句。
板书:
事先画好流程图方便教学
表达方式与讲解备注
根据这个例子依照流程图进行讲解。
提问:
这个程序完成的功能是什么?
提醒:
这个循环体内只有一条语句:
y=y+x;然而printf(%d”,y);不是循环的语句,而是循环语句的下一条语句。
板书:
例子用来进一步解释执行过程
给出两种循环语句的相互转换格式,从格式上体现出for语句的灵活性和可读性更高
板书:
while语句与for语句形式的转换
给出while语句的例子,叫学生转化成for语句的格式
目的为了让学生对for语句的基本格式有更深地掌握,从直观上更加体现for语句在对变量赋初值、循环控制条件、控制变量的更新的灵活性,
把书上111――112页的①――⑤条总结:
表达式1,表达式2,表达式3可根据不同情况省略一个,二个,全省。
提醒:
①在省去表达式1的时候应该在循环之前给变量赋初值。
②在省去表达式2时应该在循环体内给出循环条件而不会造成死循环。
③省去表达式3则应在循环体内对变量进行更新。
④省去2个或者全部省去都应该在其相应的部分进行补充。
⑥ 分号不能省去。
板书:
对for语句的说明
对于表达式1和表达式3既可以是赋值表达式,也可以是逗号表达式,如②,可以是控制变量的赋初值和更新,也可以是循环控制变量的更新和赋初值。
对于表达式2可以为赋值、关系、逻辑、字符表达式只要其值为真条件就为真,其值为0就为假。
给出例子要求学生根据题目大意进行补充。
对for语句的基本格式和执行过程以及说明进行综合性地测试,从而进一步加深学生的印象和掌握程度。
时间分配
(分钟)
1
4
3
时间分配
(分钟)
5
2
3
3
4
3
5
六:
总结
本节课我们一起学习了for语句,学习了它的基本格式、执行过程、说明,了解了它比其它循环语句更加灵活,书写上更加简单,可读性最高,它完全可以替代while语句和do语句,也是三种循环语句中使用最多的语句,这节课我们应该掌握的重点:
for语句的基本格式和执行过程,对它的说明应该理解。
为了让大家更进一步加深今天学习的内容,我给大家留个课后题,让大家对它的知识进行回顾和掌握。
用for语句试求1――200之间的素数(素数:
只能被1和本身整除的数)
同学们,今天的课就上到这里,希望大家下来多做练习,巩固今天学的新知识。
(4分)
七:
板书
主板
一、基本格式
For(表达式1;表达式2;表达式3)语句(根据例1来讲解)
二、执行过程(见流程图)
例子:
Main()
{intx,y=0;
For(x=1;x<=100;x++)
sum=sum+x;
printf(“%d”,sum);
}
三:
for语句与while语句相互转化格式:
For(表达式1;表达式2;表达式3)语句
等价于
表达式1:
While(表达式2)
{语句
表达式3}
给出例1,要求学生把while语句转化为for语句
四:
说明
① 表达式1,表达式2,表达式3可根据不同情况省略一个,二个,全省。
不论省去哪部分都应在相应的部分进行补充.(根据例3来讲解)
② 对于表达式1和表达式3既可以是赋值表达式,也可以是逗号表达式,也可以是循环 控制变量的更新和赋初值 (根据例4来讲解)
③ 对于表达式2可以为赋值、关系、逻辑、字符表达式只要其值为真条件就为真,其值为0就为假。
(根据例5来讲解)
给出题目要求学生进行补充。
见例子3
五:
试编写1到200之间的素数(素数:
只能被1和本身整除的数)
复板
例1:
Main()
表达式3
语句
求解表达式1
表达2
语句
for语句下一条语句
{intx=1;(表达式1)
s=0;
While(x<=100)(表达式2)
{s=s+x;
x=x+1;(表达式3)
}
printf(“%d”,s);}
例2:
Main()
{intx,y=0;
For(x=100;x>=1;x--)(结合流程图分析其执行过程)
If(x%3==0)
y=y+x;
printf(%d”,y);
}
例3:
⑴mian()
{intx;
_________;
For(;x<=3;x++)
Printf(“A”);
}
⑵ mian()
{intx;
For(x=1;x++)
{__________;
Printf(“A”);
}
}
⑶mian()
{intx;
For(x=1;x<=3;)
{Printf(“A”);
__________;
}
}
⑷mian()
{intx;
__________;
For(;;x++){__________;
Printf(“A”);
}
}
提醒:
省略表达式2可用break提前结束循环语句
例4:
for(i=1,j=3,sum=0;i<=j:
i++,j--)
sum=i+j;
例5:
⑴ for(i=1;i<=100;i++) (关系表达式)
sum=sum+i;
⑵ for(i=0;(c=getchar())!
=’\n’;i+=c)(字符表达式)
⑶ for(i=1,j=2;i>0&&j<4;i--)(逻辑表达式)
⑷ for(i=1;1;i++) (数字表达式)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 教案