当前位置:文档之家› 《C语言程序设计》课程课堂教学设计

《C语言程序设计》课程课堂教学设计

甘肃有色冶金职业技术学院
《C语言程序设计》课程课堂教学设计
教学过程设计
教学内容
教学方法
与手段
计划
用时
一、课题引入
回顾程序的三种基本结构,由分段函数的求解引入我们今天要学的
内容。

目的性明确,从而诱发学生解决问题的兴趣。

引例:
计算函数值
#include <stdio.h>
#include <math.h>
void main( )
{ float x,y;
printf(“Enter x:”);
scanf(“%f”,&X);
if(x!=0.0)
y=sin(x)/x;
else
y=1;
printf(“x=%5.2f\ty=%7.4f\n”,x,y);
}
引导归纳:教师根据教学目标将所要讲授的内容巧妙地隐含在该引
例当中,激发学生的求知欲望和学习兴趣,使学生通过完成引例以及后
面的任务,达到掌握所学知识的目的。

二、任务的相关知识
1. 选择结构是结构化程序的三种基本结构之一,用于根据给定条
件的判断执行何种操作。

2.C语言中的选择结构有两种:if语句和switch语句。

if语句
主要提供两个分支的选择,switch语句提供多分支的选择。

3.下面我们先介绍最为常用的选择结构if语句。

4.if语句的基本形式
if (条件)
语句1
else 语句2
在if和else后面可以有多个操作语句,则if语句的形式变成:
if (表达式) {语句序列1}
任务驱动

7min
5min
b>a>c b>c>a
c>a>b c>b>a
3) 使用判断-交换法:
①若a<b,则交换a和b
②若a<c,则交换a和c
结果a最大
③若b<c,则交换b和c
结果a>b>c
#include <stdio.h>
void main( )
{
int a,b,c,t;
printf(“input a,b,c:”);
scanf("%d,%d,%d",&a,&b,&c);
if(a<b)
{ t=a;
a=b;
b=t;
}
if(a<c) {t=a;a=c;c=t;}
if(b<c) {t=b;b=c;c=t;}
printf("%d,%d,%d\n",a,b,c);
}
设计意图:由两个数排序,过渡到三个数排序。

体现了我们研究问题常用的“由特殊到一般”的思维方式,这样讲解既突出了重点又突破了难点,同时使学生体会了问题的抽象过程和算法的构建过程。

四、技能训练:编写程序,任给a、b、c三个数,按从小到大的顺序输出。

#include <stdio.h>
void main( )
{
int a,b,c,t;
printf(“input a,b,c:”);
scanf("%d,%d,%d",&a,&b,&c);
if(a>b)
{ t=a;
a=b; 10min 6min
b=t;
}
if(a>c) {t=a;a=c;c=t;}
if(b>c) {t=b;b=c;c=t;}
printf("%d,%d,%d\n",a,b,c);
}
师生活动:学生动笔试写按从小到大排序的算法,教师适时引导。

启发学生观察从大到小排序和从小到大排序算法之间的联系,引导学生
发现问题得出结论。

对学生汇总的答案进行评定,同时加以补充。

设计意图:任务之间环环相扣,层次递进,使学生历经问题的抽象
过程和新算法的构建过程,培养其归纳抽象能力,逐步形成算法分析,
算法设计到算法表示的程序化算法思想。

五、任务小结
1.本节课利用选择结构,主要完成了三个任务:分段函数的求解,
方程ax2+bx+c=0的根的判断和两个数、三个数如何排序。

2.选择结构—if语句:①当条件成立时,执行A操作,否则,跳
过A操作直接向下执行;②当条件成立时,执行A操作,否则,执行B
操作,二者必做其一;
师生活动:引导学生谈本节课的学习收获,并梳理归纳,教师点评
升华。

设计意图:培养学生自主梳理知识的能力。

3min
课后作业编写程序并上机调试:
1.求一元二次方程ax2+bx+c=0的根。

2.输入三个数a、b、c,要求按由小到大的顺序输出。

3.有一个分段函数如下,编写程序,输入x值,输出y值。

教学反思
“任务驱动”教学模式是通过教师精心设计的任务,让学生完成任务的同时,掌握知识、技能和方法,并且培养学生的探索精神和实践能力。

相关主题