《C语言程序设计》课程教学改革的实践与探讨

时间:2022-10-27 05:38:51

《C语言程序设计》课程教学改革的实践与探讨

摘要:案例教学法作为一种新的教学方法,被广泛用于多种教学领域。本文主要介绍了在《C语言程序设计课程中,以编程应用为驱动,通过案例引入内容的教学方法。并且用基于AHP的教学效果评价算法对此教学方法进行评价。

关键词:问题驱动;案例教学;AHP算法

中图分类号:TP311文献标识码:A文章编号:1009-3044(2008)28-0160-03

Application and Discussion about the Teaching Reform on the C Language Programming

XU Ping1, GONG Li-hua2

(1.Department of Information Science and Technology, Taishan University, Tai'an 271021, China; 2. Further Reeducation College, Taishan University, Tai'an 271021, China)

Abstract: Case teaching, as a new approach, is widely used in various teaching fields. The paper mainly introduces this kind of teaching approach, which is inspired by the programming and leads in the contents by specific cases in the course of C Language Programming and makes evaluation to the approach by teaching effect evaluation method on the basis of AHP algorithm.

Key words: question inspiration; Case Teaching; AHP algorithm

1 引言

《C语言程序设计》是一门实践性很强的课程,该课程的学习有其自身的特点。学习者必须通过大量的编程练习,在实践中掌握语言知识,培养程序设计的基本能力,并逐步理解和掌握程序设计的思想和方法。因此,《C语言程序设计》课程的教学重点是培养学生的实践编程能力。

在传统的教学方法中,采用“点―线―面”的教学模式,即先介绍变量定义,再介绍指令的语法规则,最后例子讲解。这种教学模式不利于将知识转化为能力。为此,笔者从理论和实践上探索了《C语言程序设计》这门课程新的教学方法,并收到了良好的教学效果。

2 问题驱动,案例教学

案例教学法最早于1870年在哈佛法学院创立。后来,案例教学法为哈佛商学院所采纳,被引用在工商管理教育中。经过近百年的积累和发展,案例教学法已成为西方国家工商管理教育的重要手段之一。所谓案例教学法是在教师的指导下,对案例提出的问题,运用所学的理论知识进行分析研究,提出自己的见解,做出判断和决策,达到提高学生分析问题、解决问题能力的一种理论联系实际的启发式教学方法。

案例教学法的教学过程包括案例引入、案例学习、案例总结三个阶段。在《C语言程序设计》课程的教学过程中,以编程应用为驱动,通过案例引入内容,重点讲解算法设计,并穿插介绍相关的语言知识。

2.1 案例引入

在讲C语言基本语法时,如果从数据类型、变量、常量、表达式开始,学生觉得特别抽象,不好理解。而我们用案例教学法,首先引入案例,并给出程序源代码,让学生进行编辑并调试。

案例:求摄氏温度40℃对应的华氏温度。计算公式如下:

f=9c/5+32

式中:f表示华氏温度,c表示摄氏温度。

源程序:

/* 将摄氏温度转换为华氏温度 */

# include

int main(void)

{

int c, f;

c=40;

printf("c=%d, f=%d \n", c,f);

Return 0;

}

运行结果:c=40, f=104

2.2 案例学习

通过案例提出问题:在案例中使用了哪些数据?它们的类型是什么?

讲解相关知识:在C语言中,数据有常量和变量之分。在程序运行过程中,其值不能改变的量称为常量,其值可以改变的量称为变量。在案例中,整数40是常量,c和f是变量。

常量和变量都有类型,常量的类型通常由书写格式决定。例如,40是整型常量,40.12是实型常量。而变量的类型在定义时指定。

变量定义的一般形式:类型名 变量表;

例如:

int c, f;/* 定义两个整型变量c和f,用于存放整数*/

char a;/* 定义一个字符型变量a,用于存放字符型数据*/

C语言中常用的数据类型包括int(整型)、char(字符型)、float(单精度浮点型)、double(双精度浮点型)。其中,float和double都是浮点型(实型),用于存放浮点数(实数),区别在于double型数据占用空间更大,精度更高,取值范围更大。

2.3 案例总结

通过案例学习,让学生很轻松的掌握了数据类型,以及常量、变量的使用方法。并且提出几点注意的问题:

1) C语言中变量的含义和数学中变量的含义不同。C语言中的变量代表保存数据的存储单元,而数学中的变量代表未知数;

2) C语言区分大小写字母,它认为Ca和ca是不一样的;

3) 算法是程序的灵魂,良好的算法设计,不仅可以提高程序的执行效率,起到事半功倍的效果,而且可以以算法设计为基础,通过寻求不同问题存在的相互联系,从计算机角度对不同问题的共性进行算法设计,实现程序编写的举一反三。

根据案例提出:

思考题1:求摄氏温度30℃对应的华氏温度。

思考题2:求华氏温度100℃对应的摄氏温度。

3 课程教学改革效果的评价

在课程改革实践中,如何评价课程教学改革的效果至关重要。同时,教学效果的评价结果在实践过程中可以指导课程改革。本文参考AHP算法,从学生评教、教师评学两个因素建立教学效果评价指标体系和多级模糊评判模型,实现课程教学效果的多指标评价。

3.1 基于AHP的教学效果评价算法

AHP算法是一种有效地处理那些难以抽象为解析形式数学模型的问题(即非结构化问题)或难以完全用定量方法来分析的复杂问题的手段,其主要思想是将一个复杂的多因素评价问题分解为具有递阶结构的评价指标和评价对象。二级模糊层次分析决策模型的步骤如下:

1) 根据实际需要建立评价指标因素集U={u1,u2,…un},将U分成若干组U={u1,u2,…,uk},使得■,称U={u1,u2,…,uk}为第一级因素集。■ (i=1,1,…k),其中nl+n2+…+nk=■称为第二级因素集。

2) 选择模糊评判集V={v1,v2,…,vm},其中vj(1

设■的权重为■,求得综合评判为■。

3) 再对第一级因素集U={u1,u2,…,uk}作综合评判,设U={u1,u2,…,uk}的权重为A=(al,a2,…,ak),总评判矩阵为:

得一级模型的综合评判为A・R=B∈Γ(v)。最后,根据评判结果B进行排序,确定该教学年度的教学效果,其值越大,教学效果越好。

3.2 教学效果评价指标体系的构建

由于评价对象的某些评价因素往往带有一定程度的模糊性,即具有非线性特征,所以进行教学效果评价时采用了模糊综合评判模型。调查问卷中除需要给出各评价项目的权重外,还需给出各评价项目的得分。结合教学改革的实际情况,我们给出如下的评价准则,包括学生评教、教师评学两个一级指标,并建立相应的二级评价指标(如图1)。我们在构建教学改革效果评价指标体系时,着重考虑的是通过《C语言程序设计》课程的教学改革,是否能达到改革的目标。

3.3 教学效果评价

我们从2006年开始对本学院计算机系C语言程序设计课程进行教学改革。在课程结束后采用问卷调查的方式随机抽取部分学生进行学生评教,并由任课教师完成教师评学(如表1)。

表1 教学改革效果评价表

利用本文提出的基于AHP的教学效果评价算法,得综合评判为:B=A×R=(82.375,86.625)。数据表明,在2006、2007级学生《C语言程序设计》课程的教学效果评价中,2007级学生的评价值最高。

4 结束语

由此可见,随着教学改革和课程建设的深入,《C语言程序设计》课程的教学效果得到了显著提高,也增加了学生学习《C语言程序设计》课程的兴趣。并且培养了学生可以用C语言很好的解决实际问题的能力,为以后进一步学习其它高难度的编程语言打下了良好的基础。

参考文献:

[1] 谭浩强. C程序设计[M]. 第二版. 清华大学出版社,1999.

[2] 吴敏. 任务驱动教学法在《网页制作》课程中的应用[J]. 福建电脑,2006,(7):183-198,198.

上一篇:机房计费管理系统 下一篇:分布式数据库的数据复制技术研究