当前位置:首页 期刊杂志

夯实基础,实例贯穿,重在实践,易教易学

时间:2024-05-04

崔武子 刘 莹 和青芳

文章编号:1672-5913(2009)10-0093-03

摘要:本文围绕“教师方便教,学生容易学”的主题,总结出多年的探索与实践经验,树立了“夯实基础,实例贯穿,重在实践,易教易学”的教学思想。该教学思想在实践中取得了很好的效果。

关键词:程序设计;实例贯穿;应用型大学

中图分类号:G642

文献标识码:B

1引言

“C程序设计”课程是理工科专业程序设计的首选课程,很多高校都将这门课程安排在大学一年级,因此是学生所接触的第一门计算机语言课程。由于对多数学生来说C语言是零起点,逻辑思维能力还处于一个较低的水平,再加上C语言本身的特点,学生普遍反映枯燥、难学,不少教师也确实感到在本课程的教学过程中存在很多困难。针对这些问题,笔者在对课程进行教学改革与研究的基础上,围绕“教师方便教,学生容易学”的主题,开展了一系列的探索与实践活动,树立了“夯实基础,实例贯穿,重在实践,易教易学”的教学思想,并在实践中取得了很好的效果。笔者以此教学思想为指导编写的教材《C程序设计教程(第2版)》已被纳入普通高等教育“十一五”国家级规划教材,被评为2008年北京市高等教育精品教材,并获得了第八届全国大学出版社优秀畅销书二等奖。

2研究和建立教学模式

2.1以例题组织教学,夯实基础

应用型大学教育必须改变脱离实际的学院式教学模式,要面向社会,面向应用。学是为了用,在学时有限的条件下,应抓住主要矛盾,急用先学。

根据应用型大学的培养特点,教学大纲的制定,教学方法的设计,应遵循够用为度,精讲多练的原则。我们把各章内容均分为基础部分和提高部分,在基础部分中讲授最基本、最常用的内容,在提高部分中提供扩展知识的内容。例如,在循环结构一章的基础部分中,介绍for、while、do-while语句的规范使用和应用举例,在提高部分中进一步介绍三种语句的比较、不规范的for语句以及goto语句等。提高部分的内容可以根据课时的情况和学生掌握的程度作为选讲,或学生自学。

为了能在有限的课时中,达到激发学生的学习积极性,培养学生的实践能力的目的,采用了将抽象的理论转化为具体的实例的做法。即将所有的教学内容用实用性、趣味性强的例题来组织,打破了“先打基础后应用”的模式,从而保证了在实践的过程中学习了必要的理论知识。

例如,文献[1]中提到“用实例调用函数求n的平方根和n!(n>0)”引进函数的调用方法,程序代码如下:

#include

#include

long myfac(int n)

{ int i=0;long y=1;

for(i=1; i<=n; i++)y=y*i;

return y;

}

main( )

{ int n=0;double y=0;long z=0;

printf("Input data:");scanf("%d",&n);

y=sqrt(n);

z=myfac(n);

printf("Square root of %d:%lf ",n,y);

printf("%d!=%ld ",n,z);

}

通过该实例的电子课件非常直观地介绍库函数和自编函数的调用过程。在教学过程中,所有新知识点都使用实例引入,并按照编程点拨→程序代码→运行结果→程序说明的顺序进行的。其中程序说明部分是把感性认识升华到理性认识的重要步骤,对例题中出现的所有新的知识点进行介绍、归纳、分析和总结。

2.2以实例贯穿整个教学过程

讲授本课程的目的就是使学生能够编写有一定应用价值的程序。因此我们在第一堂课中就演示一个典型的应用实例(电子通讯录管理系统),让学生获得感性的认知,并了解学完本课程将来能做什么,达到引起学生学习兴趣的目的。并在以后各章介绍基础部分中的小实例后,编写和完善电子通讯录管理系统的部分代码。例如,讲授“顺序结构”一章的基础部分后,就让学生编写显示菜单的程序;讲授“分支结构”一章的基础部分后,引导学生编写从菜单中选择菜单项的程序;讲授“循环结构”一章的基础部分后,指导学生编写重复在菜单中选择菜单项的程序,如图1所示。以此方法,讲完最后一章“文件”时,学生就可以编写电子通讯录管理系统的全部代码,从而很好的把整个教学内容贯穿了起来。

我们在讲授完“C语言程序设计”课程后还设有两周的课程设计。在此阶段,首先以电子通讯录管理系统作为实例,详细介绍算法的设计、模块图和流程图的绘制、代码的编写等过程,再使学生以学习小组的形式模仿该实例编写其他的应用程序。这样既加强了小组成员之间的协调合作,又充分发挥了学生的自主性、创造性。达到了对学生进行系统化的编程训练,提高学生程序设计能力的目的。

2.3即学即练,重在实践

为了贯彻“即学即练,重在实践”的原则,我们的教学均安排在机房,并采用实例组织教学,给学生提供尽可能多的上机实践的机会。各章提供的上机训练分任务、目标、步骤、提示、扩展,其中步骤是给基础差的学生,提示是提供给多数学生,扩展是提供给基础好的学生,以此方法兼顾学生水平参差不齐的情况。

学生竞赛是课外自我提升的有效方法。我们结合学校的办学定位和应用型大学的特点,抓住育人的过程,组织了C语言程序设计大赛,极大地推动了本课程教学改革的进程,激发并提高了学生的学习兴趣。大赛采用小组参赛的形式,每组充分发挥小组内各成员的优势,共同完成三道比赛题目。此项活动既锻炼了学生的勇于探索的科学精神又进一步强化了团结协作的能力。

考试是指挥棒,怎样考试在很大程度上决定着教师如何教,教什么;学生如何学,学什么。为此我们进行了考核改革,采用机考、编程的方式,使学生在平时学习中重视实践。

2.4重视“易教”问题,体现“易学”思想

在教学过程中,如何做才能解决学生“难学”和教师“难教”的问题呢?这是我们十年来的改革焦点。在强调学生“易学”的同时,也应对教师“易教”的问题给予充分的重视,用细致入微的方法,为教师排忧解难,实现教学过程中的“双易”目标。

(1) 趣味和直观相结合。用趣味和直观的教学方法介绍所有教学内容,让学生在发现问题和解决问题的过程中,系统学习和掌握基础知识。这种方法,既可以降低教学难度、激发学生的学习兴趣,又可以使教师在轻松活跃的气氛中完成教学任务。例如,讲解整型数据溢出现象时,通过图2帮助学生理解基本整型数的变化情况。圆周上标有-32768~32767之间的数据,对某一个整数加n后的值是从该数开始,按顺时针方向数第n个数值。图2中可以看到:32767+1对应的数是-32768,32767+2对应的数是-32767。

(2) 用应用实例贯穿整个教学过程。使学生在低年级就可以得到现场工作的模拟训练,并以此作为课程设计的模板,可以使学生较顺利完成各自的任务,为学生日后进行程序开发打下基础,对后续课程的学习起到承上启下的作用。

(3) 建立立体配套的教学体系。为所采用的教材配备辅导与实训、试题精选、教学指导书等,同时提供动画丰富、互动效果好的电子教案以及所有源代码。其中教学指导书协助教师进行课前准备、课堂教学以及课后考题等,减轻教师负担,尤其针对本课程零起点教师,使其轻松上手。本指导书又明确给出每章、每次课的教学目标、重点、难点和每个例题的必讲内容,因此能够规范同步进行的多个班级教学管理。

(4) 单双号习题区别对待。提供单号习题参考答案,双号习题则在类型上与前一单号习题相同,侧重点也接近,以方便学生自测和教师布置作业。

(5) 每章内容分成基础部分和提高部分。强调个性化教育,促进学生自主学习,既克服了课时少的困难,也保持了内容相对完整的知识体系。

3实践和验证教学效果

“C语言程序设计”课程的“夯实基础,实例贯穿,重在实践,易教易学”这一教学模式是从2000年开始研究,2003年基本成熟。自2004年起,其思路一直在本校部分班级的“C语言程序设计”和“VB程序设计”课程中做试点,2005年完成校级应用性教育本科教学改革建设项目中的“应用性本科C、VB程序设计课程教学模式的构建与教材建设”,并从2007年9月,又开始进行校级“应用性本科计算机基础课程教学方法改革的研究与实践”项目。2008年首次在大范围(25个班的C语言程序设计课程)使用本模式,其效果显著。目前“VB程序设计”和“C语言程序设计”课程都已成为本校精品课程,选用的教材均获北京市精品教材称号。图3和图4均是2008年5月对本校422名学生进行的调查结果。

我们同时也对学生“听讲”、“读程序”、“独立编程”、“教材”等问题进行了调查,从统计数据中可以看到,我们的教学改革是见效的,而且基本实现了“学生容易学,教师方便教”的目标。

经过几年的不断努力和探索,我们在“C语言程序设计”课程的教学中,提出并实施了以应用为本的“夯实基础,实例贯穿,重在实践,易教易学”的新的适用于应用性人才培养的教学思想,并在改革教学方法与手段等举措的保证下,取得了良好的教学效果。但课程的改革不是一朝一夕的事情,还需要在“实现面向应用需要、采用多种模式、启发自主学习、重视实践环节、培养创新意识、树立团队精神”的教学理念的指导下,不断地进行探索和研究。

参考文献:

[1] 崔武子. C程序设计教程[M]. 2版. 北京:清华大学出版社,2007.

[2] 崔武子. 应用型大学教材的策划思考[J]. 科技与出版,2008(7):42-43.

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!