任务驱动法在“C语言程序设计”课程教学中的应用研究

2020-03-01 07:18丁发红
科学咨询 2020年50期
关键词:C语言程序设计三位数水仙花

丁发红

(庆阳职业技术学院 甘肃庆阳 745000)

“任务驱动法”是指在教学过程中,教师不直接讲解教学内容,而是把教学内容分解到精心设计的各项“任务”中,学生在教师的帮助下,在任务的强烈驱动下,先进行自主探索学习,结合教材内容和教师提供的学习资料,找出解决问题的方法,最后通过完成“任务”来达到掌握教学内容的目标,“任务驱动”教学方法符合信息技术的层次性、应用性、实践性和创新性的特点,近年来各高职学院信息化教学设备充足,所以信息技术课程教学效果较好,但是“C 语言程序设计”是理论性很强的一门课程,相对于其他课程来说要求学生掌握的基础知识尤其是数学基础知识较多,所谓的任务就是完成程序设计,如何引导学生由简到繁、由易到难、循序渐进地完成编写程序的任务。下面我们以求水仙花数为例来说明任务驱动法在项目教学中的应用。

例题:打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身,例如,153是一个水仙花数,因为153=13+53+33

一、了解学生与所授内容相关的现有的基础知识

要在“C 语言程序设计”课程教学中实施任务驱动法,一定要了解学生现有的知识基础,明确学生掌握本节课程需要的基础算法,比如上题中学生一定要了解水仙花数肯定是一个三位数,数值范围在100~1 000 之间,而且该数的特点是各位数字的立方和等于它本身,高职学生现有的知识基础是完全能够理解的。授课时可以适当举个已知的“水仙花数”的例子,让学生充分了解题意,明确“水仙花数”的含义。

二、根据学生基础,明确学生完成本程序的重点难点

在了解程序设计目的和学生现有基础知识的前提条件下,引导学生突破难点,比如以上程序设计中,程序的难点就在于如何将一个三位数中的各位数字从原三位数中分离出来,分离过程中要用到已经学过的求余(%)、求整(/)函数,授课过程中要引导学生重温这两个函数的功能,比如将153 中的各位数分离出来,个位数:153%10=3,十位数:153%100/10=5, 百位数:153/100=1。

对于一个三位数来说:个位数=三位数%10;十位数=三位数%100/10;百位数=三位数/100,为了让学生掌握程序设计的重点、难点,可以在此列举几个三位数,并且要求学生将个位、十位和百位数分离出来,达到理解难点、巩固重点的目的。

三、让学生理解掌握该程序的相关数据结构

在理解题意,掌握算法重、难点的基础上,如何将算法用计算机语言体现出来,这就要求程序设计者巧妙利用数据结构,比如该题我们可以运用“穷举法”,将100~1 000 范围的所有三位数利用以上方法一个一个将个位、十位和百位分离,然后测试该三位数是否等于个位、十位和百位数的立方和,如果相等,则打印该三位数,否则不打印。要实现以上算法,必须使用循环结构程序来实现从100~1 000 之间数据的一一测试,循环结构内部再使用选择结构程序设计来实现该数是否为“水仙花数”的判断。

四、引导学生完成程序编写并上机运行

在理解以上算法、数据结构的基础上,引导学生编写程序如下:以153 和154 为例,运行程序,分别拆分出个位数hun,十位数ten 和百位数ind,然后用if(n == hun*hun*hun + ten*ten*ten + ind*ind*ind)条件判断是否成立,引导学生检查程序。

五、程序调试

程序调试是将编写的程序录入环境运行测试,修正语法错误和逻辑错误的过程,这是保证所设计程序正确性的必不可少的步骤。测试过程中可根据测试时所发生的错误进一步诊断,找出原因和具体的位置进行修正。

“C 语言程序设计”课程教学中,因为每节课都是以完成某一个具体的程序设计为目的的,所以我们用任务驱动法开展教学清晰的思路、效果明显,在完成任务的过程中,可培养学生分析问题、解决问题的能力。在调试程序的过程中,学生还会不断地获得成就感,从而激发他们的求知欲望,逐步形成一个感知心智活动的良性循环,培养他们独立探索、勇于开拓进取的自学能力。为更好地适应今后的工作岗位可以根据需求自学其他计算机语言打下良好的基础。

猜你喜欢
C语言程序设计三位数水仙花
学习“三位数乘两位数”三要点
摆三位数
积是三位数还是四位数
水仙花栽在水里也能开花
三位数密码
水仙花
以“学生为中心”的《C语言程序设计》教学设计探究
基于翻转课堂的《C语言程序设计》课程教学系统的实现与研究
浅谈《C语言程序设计》课程的教学改革
《C语言程序设计》课程的教学改革与实践