您好, 访客   登录/注册

新工科背景下的C语言程序设计模块化教学改革探讨

来源:用户上传      作者:皇苏斌 赵森严 刘三民

  摘要:为了提高C语言程序设计课程中学生的实践动手能力和创新能力,根据教育部新工科建设的理念和要求,探索模块化教学在C语言程序设计理论教学、实践教学和考核管理中的应用。以学生为中心制定任务驱动的理论教学模块、层次化实践教学模块和综合考核管理模块,激发学生对C语言程序设计课程的学习兴趣以及提高学生的自主创新和实践能力,进而弥补传统教学的弊端,提高C语言课程的教学效果。
  关键词:C语言程序设计;模块化教学;新工科
  中图分类号:G642        文献标识码:A
  文章编号:1009-3044(2021)07-0106-02
  Abstract: To improve the practical and innovation ability of students in the C language programming course, this paper explores the application of modular teaching in the C programming language course based on the concept and requirements of emerging engineering education. The task-driven theoretical teaching module, hierarchical practical teaching module and comprehensive assessment management module are formulated for students, which is capable of arousing students' interest in C programming language learning and improving the ability of independent innovation and practice. The modular teaching reform for the C programming language course can make up for the disadvantages of traditional teaching and improve the effect of course teaching.
  Keywords: C programming language;emerging engineering education;modular teaching
  1 引言
  为深化工程教育改革,建设工程教育强国,教育部于2017年2月发布了《教育部高等教育司关于开展新工科研究与实践的通知》,并于2018年3月发布了《教育部办公厅关于公布首批“新工科”研究与实践项目的通知》(教高厅函[2018]17号),对“新工科”研究与实践项目提出了新的要求[1-2]。C语言程序设计课程作为高等教育理工科专业的专业基础课,是一门创新性和实践性较强的应用型课程。该课程在理论教学和上机实践教学中主要培养学生分析问题、解决问题的能力,对提高学生的工程实践以及创新能力具有重要的意义。
  C语言语法灵活、结构清洗、功能丰富,且与硬件有着非常紧密的联系,兼备低级语言的许多特点和高级语言的优点[3]。然而,C语言程序设计课程多数高校开设在大一第一或者第二学期,大部分学生在计算机程序设计语言方面基础薄弱或者没有任何的基础,学生普遍反映C语言知识点多、易混淆,时常在掌握理论知识的情况下实际编程实践却无从下手。因此,为了激发学生对C语言的学习兴趣,提高学生的工程实践能力和创新能力,本文结合新工科建设的理念和要求,将模块化教学应用到课堂教学、实践教学和考核环节中,进行了如下幾个方面的教学研究改革探讨。
  2 C语言程序设计教学中存在的问题
  2.1 教学模式单一
  现有的C语言程序设计课程基本采用理论课程结合上机实践课程的教学模式。在理论课的教学中,教师通常运用多媒体教学向学生讲述C语言程序设计的理论知识点;在上机实践教学中,教师布置相应的上机内容,让学生按照实验要求巩固理论课中已学习的知识点。然而,在上述传统的教学模式中,学生大多是处于被动的机械式学习状态,对理论知识点的来龙去脉以及真正的实际应用缺乏相对应的理解,导致学习效果差,无法体现新工科建设中对实践性和创新性的要求。
  2.2 考核方式单一
  传统的C语言程序设计考核方式主要分为笔试和机试两种。笔试不能很好地体现学生的动手和实践能力;机试虽然可以体现学生的动手和实践能力,但相关的教学目标且难以很好地体现。同时,上述考核形式大多放在期末,使得部分学生突击学习以应对期末考试,进而难以提高对学生自主学习和创新能力的培养。
  2.3 缺乏对编程思维的培养
  在理论课堂教学中,传统的教学过于强调C语言的特点、语法、结构等知识点,使得大部分学生只专注于对C语言知识点的记忆、学习和掌握,却忽略了最重要的编程思维能力的培养[5],进而偏离了新工科建设对培养创新型、应用型的综合性人才要求。
  2.4 缺乏主动学习的兴趣
  学生经过十年的寒窗苦读,终于进入了大学的学习和生活,学习的压力相对减轻了很多,也脱离了父母的视线范围,因此学习的刻苦程度和高中相比形成了鲜明的对比。由于刚进入大学,学生对自己的专业定位不清晰,且第一次接触计算机程序设计语言,对编程思维的培养、知识点的运用存在困难。上述问题主要在于学生学习兴趣不浓、动手实践少、机械式学习,导致了缺乏对C语言主动学习的动力。
  3 模块化教学的意义
  新工科建设强调专业间的交叉融合,而对于课程建设来说需要进一步优化课程内容,丰富实践形式,切实提高学生的自主学习、动手实践和创新能力。在新工科建设背景下,C语言程序设计模块化教学具有重要的意义,具体如下:   3.1 符合新工科建設理念下的人才培养要求
  新工科建设要求改革创新人才培养机制,培养面向新领域的新型工程科技人才,即培养社会所需要的创新型、应用型综合性人才。C语言程序设计的模块化教学主要以学生为中心,强调理论联系实践,将所学理论知识在实践中应用,进而显著提高课程的教学效果。
  3.2 提高动手实践能力
  C语言程序设计课程知识点繁杂、易混淆,学生初次接触时难以很好地理解和掌握。在上机实践的时候学生经常不知如何下手、如何学习编程思维。模块化教学以做好学生引导,优化教学方法为基础,划分符合专业特色的教学模块,并制定相应模块的实践环节,进而培养学生的综合实践能力。
  3.3 激发学生的学习兴趣
  C语言程序设计是大多数学生初次接触的计算机程序设计语言,学生的学习兴趣不浓厚,且部分学生存在抵触心理。模块化教学可以从学生的需求出发,打破常规,改变传统的机械式教学,融入专业建设需求和职业实景,进而激发学生学习的兴趣。
  4 新工科背景下C语言程序设计模块化教学改革措施
  以新工科建设的人才培养目标为导向,探索模块化教学在C语言程序设计理论教学、实践教学和考核管理中的应用。以学生为中心,制定任务驱动的理论教学模块、层次化实践教学模块和综合考核管理模块,以激发学生学习C语言的兴趣和自主创新实践能力。具体的教学改革内容如下。
  4.1 任务驱动的理论教学模块
  根据新工科建设在工程教育方面的要求,以实际工程任务为导向,按照课程内容与工程任务的关联程度来制定教学模块。通过设置合理的教学模块,将C语言的基础知识融入具体的工程任务中,引导学生从机械式被动学习转向以应用为导向的主动学习模式,改变以往教学中存在的教学模式单一、刻板枯燥、学生兴趣不高等问题。
  4.2 层次化实践教学模块
  为了培养和锻炼学生的编程思维,加深对计算机程序设计语言的理解程度,切实提高学生在实际工程任务中分析问题、解决问题的能力,我们在C语言程序设计的上机实践环节中使用层次化实践教学模块。(1)基础层,巩固基础知识。将C语言理论基础知识加入上机实践环节中,进一步让学生做到知其然并且知其所以然。(2)进阶层,培养编程思维。根据教学模块制定上机任务,借助大量上机实践提高学生对程序设计中选择结构、循环结构、数组和函数等的理解与掌握,做到灵活应用、举一反三,切实培养学生的编程思维以及提高动手实践能力。(3)应用层,提高协作能力。根据模块化教学内容,制定综合性实验任务,将学生进行分组管理,让学生之间进行互相帮助,提高团队协作能力,以快速地掌握程序设计知识。
  4.3 综合考核管理模块
  为了提高学生学习C语言的积极性以及自主创新实践能力,在考核模块中综合考虑多方面因素,除了传统的理论和上机考试外,引入创新加分机制。一方面,在理论教学模块中建立例题档案,将学生对例题的掌握程度计入考核成绩;另一方面,在实践教学模块中建立综合实践题,根据学生的动手实践能力、团队协作情况来进行计分,并计入考核成绩。通过创新加分机制,形成良性的竞争循环,进而慢慢地提高了学生的学习兴趣和编程能力。
  5 结论
  针对新工科建设中要求培养面向新领域的新型工程科技人才,本文对C语言程序设计模块化教学改革进行探讨,以学生为中心,提出了任务驱动的理论教学模块、层次化实践教学模块和综合考核管理模块,进而激发学生学习C语言的兴趣,提高学生在实际问题中分析问题、解决问题以及自主创新和动手实践的能力。
  参考文献:
  [1] 钟登华.新工科建设的内涵与行动[J].高等工程教育研究,2017(3):1-6.
  [2] 徐猛,楚旺,宋英杰,谢青松.新工科背景下软件工程C语言本科教学改革[J].计算机教育,2019(7):173-176.
  [3] 刘顺.C语言程序设计教学方法改革研究[J].教育现代化,2019,6(89):50-51.
  [4]马巧梅,杨秋翔,何志英.基于新工科理念的程序设计基础课程教学改革与实践[J].计算机时代,2020(6):91-94.
  [5] 谢丽华.C语言程序设计教学中如何培养学生的逻辑思维能力[J].电脑知识与技术,2020,16(2):171-172.
  【通联编辑:王力】
转载注明来源:https://www.xzbu.com/8/view-15394093.htm