APP下载

应用型人才培养的高校《C语言程序设计》课程教学质量改革与探索

2018-12-05张淑荣韦立梅

电脑与电信 2018年9期
关键词:C语言程序设计C语言程序设计

张淑荣 韦立梅

(广东白云学院,广东 广州 510450)

1 引言

《C语言程序设计》课程目前是各大高校计算机专业开设的一门基础课程,是学习其他计算机语言的基础,同时也是开发计算机系统软件非常有力的工具。该门课程的学习主要包含C语言中的不同数据类型、运算符及表达式等的运用、程序的流程控制、函数、数组、指针、结构体和共用体、文件等的程序设计知识。应用型本科大学本着培养学生成为应用型人才为目的,提高教学质量为根本,让学生在学习C语言过程中领会程序设计的要旨,领会计算思维。美国卡内基·梅隆大学计算机科学系前系主任周以真教授在2006年发表了一篇著名文章——《计算思维(Computational Thinking)》,文中谈到“计算机科学的教授应当为大学新生开一门称为‘怎么像计算机科学家一样思维’的课,面向非专业的,而不仅仅是计算机科学专业的学生”,计算机思维代表着一种普遍的认识和一类普适的技能,每个人都应热心于它的学习和运用,通过学习编程,了解什么是抽象、递归、复用等计算思维,能在各行各业中更有效地利用计算机工具解决复杂问题。而当下,各个行业开发者都喜欢使用什么编程语言呢?图1为目前市场上最受欢迎的计算机语言趋势图。

从图1可以看出C语言在目前市场上仍占有着一定的地位,仍受众多开发者的青睐,同时,在不同的领域C语言的地位远不止当下最流行的计算机语言,所以对于学生来说学好计算机C语言很重要,而老师如何能让学生们顺利地学好该门课程,达到预期的效果,就需要老师们对该门课程的教学模式作进一步的改进,本文将从教学方法和课程评价两大方面提出几点建议和设想。

图1 最受欢迎的计算机语言趋势图

2 教学方法

2.1 启发式教学

由于《C语言程序设计》课程是针对新入学学生开设的课程,学生们对计算机语言的认识、编程思想都处在一个懵懂的阶段,需要老师去耐心地引导和启发。老师应该根据具体的教学目标、教学内容,从学生所掌握的知识基础、接受能力出发,通过师生间的互动、身边学生所熟悉的事物启发学生,调动学生的主动性和发挥学生的创造思维能力,让整个课堂处在一个较轻松活跃的氛围。

1966年,C.Bohm和C.Jacopini首先证明了只用顺序、选择和循环三种基本程序流程控制结构就能实现任何“单入口、单出口”的程序,这给结构化程序设计奠定了理论基础,所以对于程序的选择和循环流程控制结构在进行授课时,就需要老师引导理解学习。

如:选择结构的任何多条分支,在执行上,“跟我们面前的分岔路一样,若想要到达目的地,你只能选择其中的一条路去走,因为你分身乏术”,选择结构如此,不管有多少条分支,你只能选择条件判断为真的那条分支执行。

再如:循环结构的设计,“如同它的名字一样,循环着,好似我们在一个圈里循环着一圈一圈地跑步,但如果一直循环着跑步,那结局只有一个就是‘死亡’,同样的道理,循环结构要避免无休止地循环,也就是避免‘死循环’,否则将永远得不到输出的结果!那么,如何能避免‘死循环’呢?这就需要在结构中放置一个调节器,这个调节器的作用就是能促使循环判断趋向‘假’!这样循环就可以结束,结果就可以输出!”循环实例讲解时可以通过列举学生周边的任何事物与教学案例相结合的方法,调动学生的学习兴趣,充分地发挥他们的想象力,假设使用FOR循环方法求n!,这个求解过程如同部分学生课下爱玩的游戏“大富翁”,整个循环过程如同“大富翁”游戏的一次历程,游戏中掷一次筛子,相当于我们循环判断为真一次,游戏中掷完筛子就可以“买地建房、生病住院、出事拘留等”,而我们循环判断为真一次后设计的只是一件事,那就是只要进行一次用当前的“累乘求积变量P”与“累乘次数计数器i”的乘积运算就好。通过这样的举例,学生对程序设计不会有那么多的畏惧,也能从身边的事物悟出一些如何能更有效地学习该门课程的道理。

2.2 项目驱动教学

在该门课程进行到一半的时候对学生可以采用项目化教学方法,通过2个项目的教学安排,老师不仅要把握知识的易理解性,而且要把握思维规律,渐进式地演绎并分析实际问题,找出其中内在的规律,讲解时可以用形象类比等方法进行启发性教学。在过程中培养学生对编程的爱好,使用一些可以让学生能产生兴趣的小游戏如“贪吃蛇”、“潜艇大战游戏”或实用的“万年历”、“计算器”、“手机通讯系统”等作为教学案例,引导学生如何分析问题、如何模块化解决问题,充分调动学生的积极性,激发学生的编程灵感,逐渐让学生在学习过程中产生兴趣,通过所学的知识实际应用到身边的事物。课后让学生独立设计一个项目作为该课程考核的一个模块,如图2所示。

通过以上7个方面,让学生适应以“项目化”完成设计题目,锻炼学生课后独立分析问题、解决问题的能力,领会计算思维解决问题。

图2 项目设计文档纲要

3 过程式课程评价

根据《C语言程序设计》课程的特点,将该门课程采取过程式课程评价的方式对学生进行考核。注重学生学习的过程,培养学生养成良好的学习态度,在对课程评价时,将学生的学习过程中的每一个环节进行打分评价,总体分为四个方面,如图3所示:

图3 成绩评定各模块比例图

说明:

(1)出勤:对学生考勤和学生的课堂表现进行考核,严格要求学生出勤上课,不得无故缺课,无论旷课或请假,均采取一定的扣分惩罚,只要来上课了,就向成功迈进了一步,所以这一块必须要严格把关。

(2)上机操作:该模块评分标准按学生课上操作的态度打分,如:学生是否很认真地练习、练习过程中是否发现了问题并及时寻求方法解决,以及是否已达到了熟练的操作程度等。老师可以以课堂收作业的方式激励学生课堂练习,对于上机操作没上交作业或旷课的学生,该次课作业分数为0分;对于请假的学生,可给机会补交上机操作作业,并按上机操作评价标准评分,若不按时补交,该次课作业仍旧为0分。

(3)项目设计报告:该模块为学生课后要实现的一个考核项目,需要学生独立思考,自拟设计题目,并明确给出项目设计的目的及要求,设计的思想要正确、清晰、完整,程序设计代码完整无误,并能运行结果正确,实现的过程中可以使用多种方法排错,有自己的创新或见解。老师通过以上各方面对学生进行该模块的评价打分。

(4)期末考核:该模块为综合性考核,老师可采取“机试”或“笔试”的方式进行学期末考核,并根据详细、规范的评价标准进行评价打分。

以上4个模块各占总评成绩的一定比例,学生学习过程的成绩大约占整个成绩的60%左右,老师可以从多方面、多角度综合考核学生对该课程的掌握情况,让学生能成功地对计算机语言打下坚实的编程基础,同时为后续要开设的相关编程课程如C++、Java、JavaScript做好铺垫。

一方面是对C语言课程知识的理解,另一方面是专业知识的灵活运用,所以教师的教学重点应放在对学生思维能力的培养和思维习惯的养成上面。

4 结束语

《C语言程序设计》课程是一门实践性非常强的课程,老师在进行教学内容设计时,要坚持以培养学生的理解能力、计算思维能力和创新能力为目的。课堂采取启发式教学和项目驱动教学方法,激发学生的学习兴趣,引导学生运用抽象思维方式并结合身边事物去解决实际问题。通过过程式课程评价方式对学生进行考核,不断激励学生,努力学好计算机编程语言,成为一名合格的应用型计算机编程人才。

猜你喜欢

C语言程序设计C语言程序设计
基于Visual Studio Code的C语言程序设计实践教学探索
从细节入手,谈PLC程序设计技巧
基于C语言的计算机软件编程
高职高专院校C语言程序设计教学改革探索
以“学生为中心”的《C语言程序设计》教学设计探究
基于翻转课堂的《C语言程序设计》课程教学系统的实现与研究
浅谈《C语言程序设计》课程的教学改革
《C语言程序设计》课程的教学改革与实践
PLC梯形图程序设计技巧及应用
论子函数在C语言数据格式输出中的应用