APP下载

C语言程序设计课程考核改革探索与研究

2023-08-26金传洋马杰邱晓波

电脑知识与技术 2023年20期
关键词:C语言程序设计

金传洋 马杰 邱晓波

关键词:C语言程序设计;理论考核;形成性考核;终结性考核;全过程数据管理

中图分类号:G642 文献标识码:A

文章编号:1009-3044(2023)20-0064-03

0 引言

未来是信息化战争,加速培养适应信息化战争需要的优秀军事人才,已经成为当前军队院校人才培养的重中之重[1]。而信息作战能力离不开信息获取、信息传输、信息处理、信息控制、信息管理等一系列信息处理活动,具体到院校的人才培养中就要求学员能够掌握现代高新技术尤其是信息技术知识,能够驾驭现代高新信息作战装备,善于解决实际问题,具有很强的信息处理实践能力。而计算机语言程序设计课程恰好可以为信息处理实践能力奠定良好的基础[2]。

C语言程序设计是面向火力指挥与控制工程、电气工程及自动化、指挥信息系统工程、无人作战工程等专业开设的限选课,通过本课程的学习,使学员掌握用C语言进行程序设计的基本方法与编程技巧,具备对程序进行调试的基本能力,充分发挥本课程逻辑性强、工程应用广泛的特点,培养学员计算机编程的思想和理论联系实际的工程概念,培养学员利用计算机解决实际问题的意识和能力,培养学员计算思维和创新意识,提高军事信息素养[3]。

1 教改目标

本次教学课程考核改革主要在形成性考核和终结性考核环节引入雨课堂和头歌实践教学平台,集中发挥两个平台本身优势,优化调整C语言程序设计课程基本理论与编程实践考核模式,其中,基本理论考核采用雨课堂互动答题方式实施,编程实践考核借用头歌平台完成。

本次课程考核改革,旨在引导各项教学活动向培养学员编程能力聚焦,以期达成以下3个目标。

1.1 促进学员独立编写代码解决实际问题

对于C 语言中的经典问题、贴近生活的编程问题,学员能够独立设计算法、编写代码、调试修改,会自主独立完成文档编写,培养计算思维和编程思想,能够理论联系实际,具备计算机分析、解决实际问题的能力。

1.2 提高学员课堂参与度,更好体现“学为主体”的教学理念

课程教学过程中,通过问题牵引、任务驱动的方式,开展探究式学习,引导学员主动探索、自主探究问题解决方案。

1.3 精准收集过程性考核和终结性考核全程数据,使教学活动更加科学高效

科学的考核评价促使学员对学习目标更加明确,使学习效果精准量化,凸显“学员为主体,教员为主导”的育人理念。利用雨课堂、头歌平台强大的数据管理功能,全程记录学员每堂课的学习情况、每次作业完成情况、每次阶段测试考核结果,实现教学全过程数据管理,使过程性考核的各小项(课堂表现、作业完成情况、阶段测试)都有翔实的数据支撑,使结果更科学、更有说服力。终结性考核采用头歌平台组织实施,记录每道题作答情况,使授课教员精准掌握所有学员的学习效果,实时调整教学策略。

2 教改设计

2.1 方案总体设计

本课程考核分为形成性考核和终结性考核两部分,其中形成性考核占50%,终结性考核占50%,各环节构成如表1所示。这样的考核方案设计,避免了以往的期末考试“一锤定音”,注重学员的及时反馈,教员能够快速掌握学员学习情况,引导学员将功夫用在平时,注重学习过程对能力培养的重要性[4]。

2.2 形成性考核设计

形成性考核包括课堂表现(占30%) 、平时作业(占30%) 、阶段测试(40%) 等3 部分。其中,课堂表现:主要包括基于雨课堂的基本理论考核和课堂编程实践课完成情况。平时作业:主要基于Educoder平台编程发布的任务完成情况,每周统计1次成绩。阶段测试:根据单元主题内容组织若干次编程阶段测试。

1) 课堂表现

① 基于雨课堂的基本理论考核

雨课堂是清华大学和学堂在线共同推出的新型智慧教学解决方案,实现无缝嵌入PowerPoint和微信。教师使用雨课堂将各类习题、视频等资源方便推送给学生,师生沟通及时反馈;课上实时答题,为师生互动搭建良好平台;课后推送作业,建立师生沟通桥梁,使学习互动永不下线,构建立体空间[5-6]。

雨课堂通过连接师生的智能终端,将课前-课中- 课后的每个环节都赋予全新体验,快捷实现大数据时代的智慧教学,支持师生多元实时互动、教学全过程数据收集分析等[7]。

在实际教学活动过程中,教员充分发挥雨课堂平台所具备的无缝嵌入PPT的独特优势,紧密组织课前、课中和课后三个环节。课堂前测:课前使用,组织前测,了解学员的知识背景、预习情况;课中参与:引导学员积极参与课堂互动,掌握课堂学习效果;课后巩固复习:测试课次学习效果、掌握程度,补差补缺。

② 课堂编程实践课

头歌平台是一款可以实现在线编程、在线测评、教学资料共享、实时数据统计的云計算平台,为计算机语言编程实践课、阶段性编程测试、上机考试等教学活动组织提供高效、快捷、可靠平台。通过雨课堂和头歌平台有机结合,使得课堂教学、课后作业、阶段测试、期末考试等提供翔实的数据,实现了教学全过程数据管理。通过平台,教员可以实时动态掌握每名学员的通关情况,借助“查看实训”按钮,查看学员编写的代码。对于完成较好、设计精巧的代码,可以向全班学员展示分享。如学员遇到问题,教员直接查看,指导调试。教员发现编程共性问题,集中答疑,在总结讲评阶段,针对易犯的错误、编程不规范的情况,结合具体代码统一讲解。在课程结束时,将整个学期所有课次数据直接导出,可作为学员课程表现环节参考的数据源。

2) 平时作业

平时作业主要设置为课后Educoder 编程作业。通过头歌平台发布课后练习任务训练编程实践能力。经过多年的教学实践,教学组积累了丰富的教学案例,将这些教学案例设置为教学课后练习,定期发布,供学员课后实践。

另外,课程组精选49个实训任务作为拓展编程练习,每周定期对学员编程作业情况做统计并发布。师生根据反馈可实时调整教学策略,使教学活动更加科学。第一,基于全过程数据管理的理念,数据公开透明;第二,通过数据公示,起到督促公示作用。设置每周一公示数据,学员利用周末时间在头歌平台上自主完成编程任务,这样,有效地调动学员的积极性;第三,能够及时跟踪落后学员开展精准帮扶。

3) 阶段测试

为了检验阶段性学习效果,课程组利用头歌平台组织C语言基本输入输出、选择结构程序设计、循环结构程序设计、函数、数组、指针等6次单元编程测试,涵盖了本课程核心教学内容模块。

2.3 终结性考核设计

由于C语言程序设计是一门编程课,注重实践环节,重点突出培养学员的编程设计能力,因此,终结性考核更加注重对编程能力的考核。摒弃传统纸质闭卷考核模式,将基本理论知识考查融入雨课堂中,主要考查程序阅读分析、设计调试能力。突出体现层次性、综合性、应用性,具有一定的挑战性,能突出创新班学员的能力考核这个指挥棒。

头歌在线实训平台组织考试主要包括制作编程实训题、创建试卷、设置规则并发布试卷等3个阶段。

1) 题库制作

通过设计任务、搭建平台、设置要求等3个步骤完成编程实训题的制作。

① 设计任务

明确编程任务,设置好题干、源代码以及测试数据。题干描述背景知识、编程要求、输入输出示例等关键信息。提供的源代码确保准确无误,经多组数据测试没问题。测试数据一般需提供3组以上,并设置2组数据考生可见,1组隐藏,防止学员通过直接输入输出对应测试数据完成功能代码编写。

② 搭建平台

在头歌平台的代码仓库中,为每一关的练习创建编程所需文件,学员的代码就是写在这些文件中。然后,描述题干,并编写测试集。可以根据需要编写多组测试集,全方位测试,确保代码逻辑严密。还可以设置隐藏测试集,防止学员暴力求解,直接print程序运行结果。

③ 设置要求

设置编程题的提交要求,包括:禁用粘贴、设置分值、设置时间等。根据需要,可以设置“禁用粘贴”功能,这样,学员所有的代码都得自己敲。设置分值也在这一步完成,根据考核的要求,设置相应的分值。

按上述3个步骤制作好编程题后,完成题库发布,就可以组卷使用了。

2) 创建试卷

头歌平台提供的考试题型,包括单选题、多选题、判断题、填空题、编程题、简答题等类型。根据考核方案设计,挑选不同题型,设置相应分值。头歌平台考试的亮点是编程实训题,平台可以实现代码自动测评,为程序设计类课程考核提供了便利。然后,将第一阶段制作好的编程实训题引用过来,结合前面的客观题,组合成一套完整的试卷。

3) 发布试卷

试卷编辑完成之后,设置考试规则,包括:考试时间、答题设置、防作弊设置等。其中,“切屏后强制交卷”功能确保考生考试过程中,屏幕只能出现考试界面。如果考生在考试过程中切换屏幕,将页面切换到非考试界面,系统会自动强制交卷。

3 教改成效

通过课程考核模式改革,本次课程教学取得了显著成效,主要表现:

3.1 课堂参与度更高

采用雨课堂答题的方式组织课堂教学,学员课堂参与度更高了,课堂气氛活跃了,自主探索更积极了。

相比以往,在课堂上主動提问的学员明显增多,问题更有深度和针对性。比如:在字符数组部分,有学员提出问题:char s[5]="ABCD",t[5]="EFGH";strcat (s,t);s数组长度仅为5,连接后的字符串长度大于5,这种连接操作能实现吗?

头歌平台以“通关赢荣誉”的方式组织编程任务,在编程练习过程中,每运行一个程序,每通过一道关卡,很多学员都会攥拳庆祝,脸上洋溢着喜悦的神情,收获满满的成就感,对编程的兴趣也越来越浓厚。

3.2 突出了学员创新能力的培养

本次课程改革所设置的各项考核指标紧紧围绕编程能力提升,考核评价积极引导学员自主完成项目实践和编程练习,不仅是对编程能力的锻炼,更是对思维能力的训练。让看得懂、听明白却编不出的问题有了根本性的改变,遇到问题有思路了,编程框架清晰了。通过对双重循环、递归算法、指针操作等较难理解的扩展任务,实行在线编程专题强化训练,帮助学员提升逻辑思维能力和抽象思维能力,促进学员对计算机底层工作机制有更深入理解。

3.3 学员编程能力提升效果明显

期末机考试题80%来源于实际问题,着重考查学员灵活运用计算机解决实际问题的综合能力,临场发挥、限时完成对学员的平时积累提出了更高要求。

从学员答题总体完成情况,如表2所示:

相比2021年秋教学班,2022年秋C语言两个创新班仍采用头歌平台组织机考环节(占终结性考核50%) ,其中一个班级机试成绩平均分为98分,另一个机试成绩平均分为88.6分。

在去年期末考试尝试利用机试考核编程能力的考虑基础上,教学组在开课前大胆改革确定考核形式:增加机试比例,取消笔试闭卷环节,树立更加鲜明的上机编程能力考核导向,引导学员积极投入精力,练习编程。

通过比较分析,本次课程考核改革达到了预期目标,学员整体编程能力有了明显提升,达到了预期改革成效。

4 创新经验

通过本次C语言程序设计课程考核模式创新改革,取得了3个创新点。

4.1 充分发挥信息化平台优势,精准掌握学员全程学习行为

充分发挥雨课堂+头歌在线实训平台优势,使两者有机结合,并贯穿过程性考核与终结性考核,实现整个教学活动全过程、精细化数据管理,对学员学习和实践进行了全方位管理,考核方式灵活,组考便捷,对教学效果提升明显。

4.2 实践出“真知”,能力靠平时

计算机编程能力提高不能靠仅靠知识点记忆和有限编程设计能力,更需要平时不断练习,不断实践,才能熟练掌握计算机编程调试工具,建立解决问题完整思路才是根本。

4.3 学习自主性提高了,“学为主体”的教学理念才能落地

教学组经过多次研讨备课,确定考核改革思路,并引导设计好每次课堂教学活动,使“课前、课中、课后”三个环节环环相扣,积极引导学员主动思考探究,自主寻求问题解决方案。

5 小结

结合本次考核模式改革存在的不足,后续将努力做好3方面工作:

1) 精心设计雨课堂问题

这学期设置的雨课堂问题覆盖了教学内容的重难点,个别题目知识点深度与学员预习效果不太相符,如何激发学员提高自主预习效果,更好帮助学员理解知识、应用知识需要教学组认真思考研究。

2) 深度挖掘雨课堂丰富功能

2023年秋, 教学组将进一步挖掘雨课堂功能,将雨课堂运用于课堂互动式教学、阶段性理论知识考核等教学环节,更好地引导学员参与课堂教学活动,提升学习效果。

3) 健全Educoder实训平台在线

资源下一步,教学组充分发挥团队优势,充实更多高质量编程实训任务,使实训项目知识面全覆盖、突出能力培养,通过课余自主编程练习实践,学员的编程动手实践能力得到真正提升。

猜你喜欢

C语言程序设计
翻转课堂在C语言程序设计课程中的应用
基于幻影围棋的C语言课程教学案例设计
基于能力培养的“C语言程序设计”教学改革研究
大专院校“C语言程序设计”课程建设改革
普通高校C语言程序设计课程无纸化考试改革与实现