以算法为例探讨中职C语言教学方法
2019-06-11黄力
黄力
[摘 要]中职的课程教学主流是项目教学法与案例教学法。可是在实际面对中职学生进行教学时,学生基础差,只知点不知面,动力不足互动难,兴趣更差。此时,实例教学法可以解决这一难题,学生通过实例的学习,不仅知识有了载体,学起来更形象,理解得也更深刻。
[关键词]实例教学法;算法;C语言
一、现状分析
(一)C语言是一门入门级的编程语言,它不仅可以培养学生利用计算机解决问题的能力,也是后续计算机专业相关课程甚至非计算机专业一些重要课程的基础,在高校中是一门基础的必修的课程,而在中职学校中C语言,在非计算机专业中开设得也很普遍,只是对知识的掌握深度比高校低几个层次。
(二)作为C语言的学习者,中职的学生本身也与高校的学生在思有很大的区别。
1.学生的数学基础较差,知识也不成体系,逻辑思维不强。
2.学生的学习兴趣不浓厚,学习上畏难情绪较重,主动学习的动力不足。
3.学生本身的学习能力较差,学习意志力差。
根据以上几点,在实际的对于C语言知识的讲解过程中可以尝试实例教学法。通过剖析精典的实例,让学生了解、掌握并模仿其解题的思维方式,更可以起到事半功倍的效果。通过对经典案例的模仿不仅可以大大增强学生的成就感,降低相关知识点的学习难度,更能激发学生学习兴趣。
在实际的实例教学过程中应注意两点:
1.精选案例,案例要具有鲜明的一类特征,易于学生模仿。
2.讲透案例,不仅要将知识点讲透,更要将解题的思维讲透。
二、实例教法
算法是C语言的重点,也是难点。如果纯粹讲算法理论,学生根本听不懂,关键是太枯燥学生不会去听。但是如果以实例作为切入点,则更能吸引学生并让学生更易理解。对于实例的选择,我们选取经典的猴子吃桃问题。
实例选择的理由:
1.算法只有十步左右,程序也很简单,易于讲解。该实例也是C语言中经典案例之一。
2.吃桃问题,学生易于理解,也较有兴趣。关键是算法思维清晰,易于模仿。
【题目】
一只猴子摘了N个桃子,第一天吃了一半又多吃一个,第二天又吃了余下的一半又多吃了一个,到第十天的时候发现还有一个。
【分析】:
数学的常规的解题思路如下
假设剩下S1、S2、S3、S4、S5、S6、S7、S8、S9
只要一步步地数学求解即可解决问题。方法很简单,学生很容易理解与掌握。
【想一想】
如何利用C 语言的知识来解题?
1.由于N、S1、S2、S3、S4、S5、S6、S7、S8、S9表达式写法相同,故使用循行程序结构来描述。
【提问】为什么表达式写法相同,可以用循环结构?
2.假设摘的桃子数量为S ,剩余的数量为N ,则N的初始值则为第十天的值为1,且S=(N+1)*2。
【提问】此处的表达式与上面数学解法中表达式有何不同?
3.本案采用for 循环,定义变量i=1,由于表达式数量为9,则i<10。
算法的流程图为:
【程序】
#include
Main()
{
Int i,s,n=1;
for(i=1;i<10;i++)
(
S=(n+1)*2;
n=s;
)
Printf(“第一天共摘了%d個桃子\n”,s);
}
三、结论
通过实例精选和精讲,让学生在实例中体会算法的作用,了解算法的流程图的写法、算法的编写,对于中职C语言的学生而言,学习既形象,又便于接受,也好模仿,学习轻松很多,更增加了成就感,在教学实践中取得了较好的教学效果。
参考文献:
谭浩强.C语言程序设计(第二版)[M].北京:清华大学出版社,1999.
[作者单位]
孝感市工业学校
(编辑:原琳娜)