PC版
搜索导航
论文网 > 理学论文 > 数学论文

数学专业高级语言程序设计课程教学模式改革探讨

  
  随着计算机技术的飞速发展与计算机应用的迅速普及,计算机已不再局限于计算机专业人才应用的工具,许多非计算机专业的本科生都需要在学习和工作中根据专业的特点编写实用程序。尤其对于与计算机学科有密切联系的数学专业的本科生,需要开设计算机专业课程。然而,在高校数学专业中开展计算机教育,其要求的教学内容与计算机专业有很大的不同,不能照搬计算机专业的做法,必须根据数学类专业的特点及规律组织教学,课程设置应该基于数学应用为出发点,以应用为目的。笔者以“C 语言程序设计”课程为例,通过自身体会分析了在对数学专业本科生讲授程序设计课程的过程中存在的突出问题,并对其在教学内容、教学方法上的教学模式改革进行了初步探讨。
  
  1数学专业高级语言程序设计课程教学中存在的问题
  
  笔者按照传统“C语言程序设计”的教学方法对数学专业的学生讲授程序设计语言课程的过程中,深刻体会到教师的教与学生的学存在以下几个突出的问题,从而导致学生学习起来存在畏难情绪,积极性不高。
  1.1学生基础相对较差,学习积极性不高。
  笔者所在的单位是文科类院校的数学与计算科学学院,数学专业在以经管商为优势的文科学校中处于较不被重视的地位,数学专业无论是招生规模还是招生的质量远远低于其他专业,录取分数线也相对较低,并且很多学生都不是以第一志愿考入数学专业。因此,本院数学专业的学生基础普遍较差,他们的学习能力和学习自觉性也较弱;另外,有部分学生对于调剂到数学专业还没有做好思想准备,思想还不稳定,对专业课的学习积极性不高。
  1.2教学目标的把握不准确。
  数学专业学生在学习程序设计语言课程的时候,部分学生虽然掌握了C 语言的语法规则,但却缺乏对实际问题进行分析、编程和处理的能力。究其原因,笔者认为教师对教学目标的把握不够准确,将教学目标主要放在了让学生掌握语法规则上,而忽略了问题分析和算法思想等程序设计能力和素质的培养。此外,这种教学方式还会导致部分学生在繁琐和枯燥的语法规则学习中丧失了学习的耐心和兴趣,造成了后续学习的困难。
  1.3教学内容的组织不合理。
  目前,教师通常都按照教材编排的内容和顺序,按部就班地进行教学工作。然而,C 语言教材的编写者主要考虑到知识结构的系统性和全面性来安排教学内容顺序。笔者认为,按照教材前后顺序来组织教学内容与学生从易到难的认知过程存在一定的偏差,主要表现在以下方面:(1) 初期的知识点过于繁多。以数据类型部分为例,教材中除了讲述基本数据类型之外,通常还要讲述short、long、signed 和unsigned 修饰,其他进制整数的表示、各种小数的表示、字符和字符串的表示等等。调查发现,学习伊始就要面对如此繁杂的内容。许多学生反映很枯燥,容易产生畏难情绪和放弃思想。(2)教材中每一章节也以大量篇幅罗列介绍C 语言语法规则为主,较少涉及具体的C语言编程应用。特别在整个课程的重点和难点部分,如较难掌握的数组、指针和函数,也侧重介绍新概念和相应的操作规则,即使能辅以简单例子加以佐证,也由于这些例子缺乏与实际应用的紧密结合而丧失了对学生的吸引力.
  1.4课程内容丰富,理论及上机课时较少。
  本院选择了谭浩强的《C语言程序设计》第三版作为教材。教学计划安排了总共72个学时教授,其中28个实验学时。然而,程序设计这门课程教学内容丰富,课程难度大,实践性强,教学任务重。在所给的44个教学课时范围内几乎不能全部完成教学任务,为了在有限的课时内尽可能地讲授更多的内容,为学习《数据结构和算法》等后续专业课打下基础,教学进度的安排上超出了学生能接受的范围,学生们普遍反应速度过快。因此,教学过程中面临学生负担重而课时少的矛盾。另外,C 语言是一门实践性很强的课程,上机实践也是相当重要的一个环节。但是,在实际的教学中,往往由于上机实践课时的严重缺乏,上机内容也只局限于验证教材实例程序。使学生只能纸上谈兵,而无法充分验证学习中的疑点、掌握学习中的难点。验证性实验题目的局限性限制了学生研究性学习的开展和创造性思维的培养。
  
  2 数学专业高级语言程序设计课程教学模式改革探讨
  
  针对上述在高级语言程序设计课程教学实施中存在的几个突出问题,笔者结合自己在教学实践的体会以及吸取优秀教师教学过程中较好的方法,浅谈关于如何在文科院校数学专业进行程序设计课程教学模式[1]改革的几点拙见,以达到抛砖引玉的作用。
  2.1 调动学生的积极性,使学生变被动为主动。
  程序设计课程由于它有一定的灵活性,难理解性;又由于它的发展迅速性,为当下学生所畏惧。所以培养好学生主动学习程序设计课程的兴趣、习惯、方法、能力显得尤为重要。
  程序设计解决问题都是实际应用问题,涉及各种各样的科学计算,而实际问题转换为程序,要经过一个对问题抽象的过程,建立起完善的数学模型,才能设计一个问题解决的程序。这需要程序员具有良好的数学基础。数学试题与应用程序试题是许多大型软件公司面试中指向性最明显的一类试题。例如著名企业微软和Intel的招聘面试题目:中间只隔一个数字的两个素数被称为素数对,比如3和5,5 和7,证明素数对之间的数字总能被6 整除(假设这两个素数都大于6)等等。因此,在为数学专业的学生讲授程序设计之初,可以引出数学在程序设计里所扮演的重要角色,让他们知道自己作为数学专业的学生具备很好的学习背景,并且告知他们在将来就业时选择计算机行业具备很强的优势。从而使得他们有信心并且有动力认真的学好程序设计课程,使学生变被动为主动。
  2.2明确教学目标,优化教学内容。
  《高级语言程序设计Ⅰ》教学中,由于课时的限制,教学的目标多以介绍语法为主,忽略了学生的问题分析及算法思想等程序设计能力和素质的培养。而又由于数学专业的课程规划中没有系统地开设计算机科学理论的课程。因此,有必要调整程序设计课程的教学目标:以提高学生的实际动手编程能力为目标,调整授课顺序,优化教学内容,采用目标型教学模式,侧重实践能力的培养。
  针对课程初期知识点过多的问题,笔者参考国内程序设计教学成功的组织方式[2-8],并站在初学者的角度,根据学生的学习现状重新组织课堂教学体系结构,围绕不同类型的数据,将《高级语言程序设计Ⅰ》课程划分为以下五个阶段进行:
  (1)基础部分:在课程讲授之初,以整型数据为主,重点介绍整型数据及其相关操作,例如,常量、变量及其定义、如何正确的输入、输出和计算等概念。这样,学生就不会被繁多的数据类型及其变换所吓倒,增强了他们信心。
  (2)基础扩展部分:在第一部分的基础上,通过简单扩充,讲授常用的float、double等数据类型,但他们具体的存储及多种修饰方式可以让学生作为课后参考;另外,对于有关字符及字符串的概念及其操作做特殊说明。
  (3)重点部分:首先综合介绍程序设计中的三种程序结构基本概念和用法,然后本着由问题引入、由浅入深的原则,精选课本的经典例题,并增加一些实用程序例题,进一步加深学生对这三种基本结构的理解。为了提高学生算法分析的能力,笔者认为必须改革例题的讲授方法:例题必须从零开始,按照自顶向下逐步细化的设计过程逐步给出。
  (4)难点部分:数组、指针和函数是C 语言中的难点也是重点部分。在讲授的时候,最好按照各部分的难易、重叠关系安排教学顺序。因此,笔者参照基础及其扩展部分的做法,仍以整型数据为例,重点介绍这三部分的基本概念和操作,再在此基础上对其它数据类型简单扩展;并重点介绍要求掌握的算法,例如排序、查找等。
  (5)自学部分:在课时有限的情况下,有必要引导学生增强自学的能力,教师根据学生的知识和能力精选出一些学生经过努力能学会的内容, 给出学生自学提纲, 教师在课堂上再给予检查并归纳总结就可以了,例如,"结构体"这章。有些教学内容教材讲得不够深透, 但又是主要内容,可指导学生阅读有关参考资料, 培养其阅读及自学能力。
  2.3构建网络辅助课程,提高学生学习的积极性、主动性,实现教与学的课外互动。
  由于课时有限,大量的上机实践和教学内容需要在课外完成。为了提高学生上机实践和学习的积极性和主动性,急需构建网络辅助课程,实现教与学的课外互动。笔者成功申报了广东商学院第三批网络辅助课程的建设项目,并作为《高级语言程序设计Ⅰ》网络辅助课程建设的负责人,根据自身教学的一些体会并从学生中集思广益,主持了该门课程建设,并得到专家评委的一致肯定。《高级语言程序设计Ⅰ》网络辅助课程采用“案例导引,任务驱动,自我评价”的教学模式,在使用该网络课程时可以对课堂教师讲授的内容通过阅读电子教案进行复习,重点使用案例进行练习,完成布置的任务,通过测验对自己学习的情况进行评价。
  主要模块包括课程信息(教学大纲,实验大纲,考试大纲等)、课程学习(公布各学习单元教师上课的讲义及电子课件,并介绍了学习目标、重点难点分析)、课程实验(课程设计大纲,课后实验,课程设计案例等)、扩展资源(包括常见错误、趣味程序、常见算法、C语言900例及相关链接)、学习评价(各章在线测试,综合在线测试,课后习题,模拟试题)、交流互动(提供常见问题及回答,提供学习论坛供学习者之间互动、交流)。
  网络辅助课程的开设,无论对教师还是学生来说,都是受益无穷的。以习题自测系统为例,对于教师来说,在网络辅助课程中,习题自测系统实现了习题的评判,将学生的错误集中在错误习题数据表中,便于教师及时了解学生习题中存在的问题,归纳出典型的错误,并在交流互动栏目中对这些典型的错误进行有针对性解答;通过习题情况统计结果,教师能及时掌握学生学习的情况。对学生来说,习题的网上发布和测试,使学生做习题的时间自主性更强,便于学生充分利用和合理安排时间;习题测试后的及时信息反馈,使学生及时地了解和解决习题的错误;正确作业的展示和典型错误分析的发布也为学习有困难的同学提供了参考。
  
  3 结束语
  
  实践证明,通过上述改革及网络辅助课程的普及应用,课堂教学与实验教学效果都比过去有了明显改善。通过结合每一部分的理论学习由浅入深的布置实验练习的方法,学生学习的主动性和兴趣有了很大的提高,实验的效果也有了明显的改善。通过优化教学内容、改进教学方法使C 语言教学更能适应学生的需要,培养的学生也更能满足社会的需要。
  

相关论文

教学模式程序设计高级语言改革模式
试论学分制下高职文秘专业人才培养模
电力企业改革中高质量人才梯队培养优
浅谈汽车专业英语教学改革
深化改革视角下事业单位人力资源管理
高级经济师人力资源管理发展现状研讨
汉语言文学对传统茶文化的作用研究
浅谈茶文化的旅游管理教学改革模式
社会化电商拼多多盈利模式存在的问题
大数据时代拼多多盈利模式研究
电商营销模式的新变化分析——以淘宝