Science&TechnologyVision科技视界0引言当前,普通高校理工科学生的程序设计能力受到普遍重视。国内大多数理工科高校都开设了多种程序设计课程,其中C语言被很多高校采纳为程序设计语言的入门课程。但C语言等程序设计类课程的实践教学一直面临一个突出问题,即教学内容的深浅不易把握。如果授课内容较深,则可能导致初学者产生畏惧心理,从而失去学习兴趣。但如果教学内容深度不足,则可能导致学生只能学到一些“玩具技能”,基本无法利用课堂中学到的知识解决一些较为实际的问题。1对现有解决方法的思考近年来,随着在线编程等新型教学工具和模式的出现,上述困难得到了一定的缓解,但并没有得到根本解决。如作者在近年来的教学中尝试采用“EduCoder”在线编程平台[1]作为C语言程序设计课程的过程性考核手段,取得了不错的效果。有的学生每周用于完成在线编程作业的时间超过几十小时,重复提交一次作业的次数超过100次(如图1所示,学生名字和学号均做了处理),充分说明了这些学生真正做到了用心完成作业,其效果是纸质作业很难相比的。但现有的在线编程作业模式也存在不足。首要问题是很难避免抄袭。在线编程作业大多是格式化填空形式的。这就意味着对不同学生来说,同一章节的作业内容是相同的,而教师也不可能为每个学生单独指定不同要求,因此很难判定学生的作业是否存在抄袭现象。也有一些教师采用了线上线下混合式教学[2]来提升程序设计类课程的教学效果,收到了良好效果。近年来,随着慕课(MOOC)[3]的兴起,翻转课堂(FlippedClassroom)[4]成为线上线下混合式教学的重要方式。翻转课堂要求学生先通过网络学习教师准备的视频或其他学习资料,基本掌握将要学习的内容,DOI:10.19694/j.cnki.issn2095-2457.2022.30.25基于任务驱动的C语言程序设计实践教学探索唐士杰1王会勇2(1.桂林电子科技大学电子工程与自动化学院,广西桂林5410042.桂林电子科技大学数学与计算科学学院,广西桂林541004)【摘要】程序设计语言课程的实践教学一直面临着一个困难,即教学内容的深浅较难把握。授课内容过深,会使得学习难度过大,导致学生学习兴趣下降,尤其是对一些入门性质的编程语言,如C语言等;授课内容过浅,则可能导致学生只能学到浅显的基础知识,根本无法获得实际编程能力。这导致当前很多程序设计语言课程只能以保证及格率作为授课目标。首先从理论和实践两个角度分析了出现这种局面的原因,然后结合教学实际提出了基于任务驱动的实践教学建...