高等职业教育课改系列规划教材 计算机类 C语言程序设计项目教程片
赵丽娜
[摘要]“C语言程序设计”不仅是计算机专业的专业基础课,也是电气工程及其自动化、电子信息、通信等专业的学科基础课。该课程要求学生掌握C语言的基础知识,能够独立编写代码,具备阅读程序和程序编写的素质。通过分析高职高专学生的特点,针对高职院校非计算机专业“C语言程序设计”教学过程中出现的问题,在教学内容、教学方法和考核方式等方面进行了探索和改革。
[关键词]高职高专;非计算机专业;教学内容;教学方法;改革
[DOI]1013939/jcnkizgsc201718283
C语言是目前应用最广泛的结构化程序设计语言之一,既具有高级语言的特点,也具备低级语言能够访问计算机底层的能力。C语言的应用非常广泛,C语言可以应用在电子技术、计算机控制、嵌入式系统、单片机应用和通信技术等相关学科。通过本课程的教学,可以让学生学习C语言的基本知识,掌握基本的程序设计能力,既可以为后续相关课程的学习打下坚实基础,也可以运用C语言来解决以后岗位工作中出现的实际问题。
1C语言教学现状
C语言具有较强的实践性和应用性。对于高职非计算机专业,一般于大二第一学期开设本门课程,先修课程是“信息技术基础”,后续课程是“单片机原理及应用”、“嵌入式系统”等。“C语言程序设计”要求学生掌握微机的硬件和软件的基本知识,培养学生微机的逻辑思维能力,要求掌握编程思想,具备基本的阅读程序和程序编写的素质。
在实际教学过程中教学组织者发现,C语言语法烦琐,知识点复杂,并且高职学生计算机专业知识水平较低,学习积极性欠缺,如果采用传统的以教师讲课为中心的教学方式,将不能实现很好的教学效果。除此之外,传统的以笔试成绩占总评成绩的70%的考核方式,体现不出实践的重要性。[1]
2改革措施
21优化教学内容
高职高专学生对感兴趣的东西学习积极性较高,而对相对枯燥的内容则学习效率较低。又由于非计算机专业学生计算机相关知识薄弱,因此在“C语言程序设计”这门课的教学中,不能盲目地照本宣科,教学内容的传授应考虑学生的接受程度和接受能力。树立因材施教的指导思想,遵循“理论够用,注重实践”原则,选择既具有基础性、典型性的内容。应降低对算法的要求,选择典型的、浅显易懂的算法。例如讲解指针部分,重点应放在指针的概念和简单应用,其余内容可作简单介绍或选择课下学习。[2]
课程的前几章内容往往是变量、数据类型、运算符、表达式等C语言基础知识,如果只按照教材顺序讲解,讲了几周课之后还没有涉及具体编程内容,学生感受不到C语言的功能和魅力所在,容易使学生对本门课程产生枯燥乏味和疲倦的心理,从而失去对C语言的学习兴趣。所以在课堂教学过程中应以程序设计为主线,把学生要掌握的基础内容贯穿到编写代码的过程中,通过实际案例讲解基本知识点,把学生不感兴趣的知识融入实际案例里。
22教学方式改革
C语言程序设计是一门专业基础课,教师要把基本内容讲解详细,以便让学生容易掌握,同时要让学生学会编程技巧来解决实际问题。因而,在教学过程中应按照“教、学、做合一”的原则,变更了以教师讲解为重点的传统的教学方式,真正做到了以学生为主体,教师为主导,让学生边学边练,并在实际编程平台下熟练掌握编程技巧和操作方法。主动实施分组讨论、任务驱动、讲练结合和案例导入等多种“以学生为主体”的教学方法。
221案例导入
在本课程的讲授过程中,学以致用是一个基本的要求,如果只是一味地对学生灌输知识点,不注重与实际的结合,因此在教学的过程中使用了大量的案例。以解决实例的学习方式来学习C语言程序设计这门课程,使学生体会到知识的实用性,提高学习兴趣,并能够加深对知识点的理解。[3]
222任务驱动
通过任务来激发、加强学生的学习积极性,以任务的完成结果来检验和总结学习过程。每次课都提出一个明确的任务,通过一个任务掌握某个章节的知识点,突出重点,分解难点,教学目的明确。如讲授选择结构时模拟银行ATM机的菜单选择;讲解顺序结构程序设计时提出各类数据输入输出方式的问题。[4]
比如讲解循环结构中的for语句,首先提出问题“计算sum=1+2+3+4+5+…+100的值”。传统的思路是利用赋值语句,将1,2,3,4,…98,99,100这些数值进行加法运算赋值变量sum。当利用赋值语句求解加法运算的时候,按照以下思路赋值。
步骤1:初始化,赋值sum=0;
步骤2:计算sum=sum+1,此时sum中的值为1;
步骤3:计算sum=sum+2,此时sum=1+2;由此可知最后一条赋值语句为sum=sum+100,总共100条赋值语句。
在实际操作中发现输入一百个数值的过程不仅重复烦琐,而且效率低易出错,如果利用赋值语句计算1+2+3…+10000的值,则更不容易实现。通过分析发现这种解决方式体现不出编程语言的优势所在,需要寻求其他办法。在这个时候教师提出重复执行的操作可以用循环结构来表示,下面用循环结构中的for语句解决此问题。
再次提出“具体怎样使用循环结构”的问题,通过以上分析,每条赋值语句可以改写成sum=sum+i的形式,并且这条语句重复了一百次,循环体语句是sum=sum+i,i的变化范围是1~100,i的变化规律是自增1。引出for语句的标准形式for(i=0;i<=100;i++){sum=sum+i;}。通过“提出任务—分析任务—完成任务—引出知识点及学习重点”式的任务驱动教学方式,相对于传统的反复枯燥讲解知识点式的教学方式,可以让学生带着问题主动地去学习,有助于提高學生学习积极性。[5]
223讲练结合
作为高职高专教学,实践教学应该是其一大特色,学生对实践性环节的学习兴趣明显高于理论课程的学习,C语言的教学也应通过加强实践教学,来培养学生的学习兴趣。
一般情况下,学生即使掌握了程序设计基础知识,但是在实际操作中自己仍然不会编程,面对实际问题无从下手。针对以上问题,采用了边讲边练的教学互动模式。通过讲解编程思路、编写代码、运行、调试自己设计的程序,最终获得正确结果,让学生亲自观察和体验程序设计的成功感受,加深知识的理解。在课内实践教学过程中,采用启发式的教学模式,摒弃“填鸭式”教学,引导学生在分析问题、解决问题的过程中加深对知识点的理解。例如学习复合赋值运算符“+=”,首先引导学生思考a=1;a+=?和a=2;a+=?,下一步经过编程或取结果,分析每一个结果,引出复合赋值运算符的运算规则,掌握C语言风格的表达方法。[6]
23考试改革建议
传统的考核模式是期末考试占总评成绩的70%,平时成绩占总评成绩的30%,这种“一考定终身”的评价方法,在很大程度上制约了教学水平和教育质量的提高。作为一门实践性和应用性较强的课程,要求学生注重实践,将体现编程能力的上机实验成绩加入到总评成绩中,提高平时成绩和实验成绩的比例,降低笔试成绩的比例。凸显实践和学习过程的重要性。[7]
3结论
总之,教无定法,贵在得法。在本课程的建设过程中还有很多值得我们去研究探讨的问题,希望本门课程的教学改革可以点燃学生对计算机学科领域的学习热情,能够养成学生良好的编程习惯,具有一定的程序设计能力,为以后专业课程的进一步学习打下坚实的基础。
参考文献:
[1]李凌以学生为中心的《C语言程序设计》课程教学改革[J].商丘职业技术学院学报,2015(2)
[2]陈伟宏,何建新高校非计算机专业C语言教学改革探讨与实践[J].中国电力教育,2013(34)
[3]于华应用型本科院校C语言教学改革的探讨[J].山西大同大学学报,2009(6)
[4]康苇苇于计算思维的C语言教学模式分析与案例设计[J].重庆师范大学,2015(4)
[5]边海容《高校语言程序设计》课研究性学习的设计与实践[D].南昌:江西师范大学,2005
[6]邓维斌,周玉敏提高C语言实验教学效果的探索[J].实验室研究与探索,2006,25(3)
[7]何雪英基于計算思维的C语言实验教学改革探索[J].电脑知识与技术,2016(27)
此文由 科学育儿网-观点编辑,未经允许不得转载!: 科学育儿网 > 观点 » 高职非计算机专业“C程序设计”课程改革