当前位置: 首页 > 范文大全 > 公文范文 >

C语言课程创新教学模式研究与实践

时间:2022-05-05 16:55:02  浏览次数:

摘要:针对C语言教学中教学目标不明确、教学内容泛泛的实际情况,借鉴软件工程“自顶向下”设计的思想,以实战项目为载体,项目分解任务为主线,重新梳理知识点的讲解顺序,提出培养学生能力为核心的教学目标,以阶段任务作为量化考核依据的创新教学模式。

关键词:自顶向下;实战项目;软件工程;量化考核;C语言

中图分类号:G642.41 文献标志码:A 文章编号:1674-9324(2015)03-0121-02

《C语言程序设计》课程的教学目标是通过本课程,向学生介绍结构化程序设计的基本思想与方法,使学生掌握程序设计的解题思路,能够设计解决问题的算法,能够更熟练地掌握基本的结构化程序的设计方法。通过教学,实现培养有能力,有发展潜力的计算机软件开发工作的应用人才的教学目标。本文借鉴软件工程“自顶向下”设计的思想,以实战项目为载体,项目分解任务为主线,打乱教学大纲中的知识点讲解顺序,在规定的有限学时内极大地提升了课程教学品质,取得了良好的教学效果。

一、C语言课程教学现状分析

通过问卷调查和学生座谈得知,《C语言程序设计》课程教学存在以下情况:(1)C语言本身概念抽象,语法规则众多且应用灵活,难以保证学生能够深刻理解和熟练运用;(2)该课程学时大为压缩,仅能保证对C语言主要程序结构和简单算法等验证性实验内容;(3)部分计算机基础较差的学生无法跟上教师的教学进度,容易失去学习兴趣;(4)教师在教学针对性方面教学设计不够新颖,学生反思时间不够;(5)教学内容选择上缺乏针对性,无法让学生体会技术的实用性。

二、C语言课程教学模式创新实践

传统的C语言课程教学普遍采用“先理论-再语法-简单示例”的教学方式,忽略了对学生分析问题、解决问题和动手实践应用等能力的培养,降低了学生的学习兴趣,制约了学生能力和实战技能的发展。要想提升C语言课程的教学品质,就需要从其集抽象性、逻辑性和实践性于一体的特点出发,从教学内容、教学环节以及教学评价等方面进行创新实践,只有这样,方能激发学生的主观能动性和学习兴趣,让学生积极参与教学实践,从而提升教学品质。

1.C语言课程教学内容之创新实践。教学内容的实用价值和趣味性有助于激发学生的学习兴趣,提升学生对问题分析、解决的专注度。鉴于“90后”学生创造力与实用主义并存的现象,教学内容可以选择学生容易接触的超市购物管理系统、图书管理系统、学生成绩管理系统等。本文拟定以学生成绩管理系统为项目载体,从专业角度出发,借鉴软件工程“自顶向下”的思想,围绕项目功能的分解、分析和完成的主线进行教学。不仅完成传统教学中的重点知识点,而且融入了对当代软件工程师必备素养的培养。在创新教学模式中,加深了学生面对现实问题时从分析、分解、实现、联调到撰写文档的软件开发流程的体验,不仅在体验中潜移默化地渗透了系统开发的大局观,更能让学生有条不紊地逐级实现项目分解的任务,逐步实现目标的过程中同时不断强化学生的自信心。

2.C语言课程教学环节之创新实践。本文创新教学环节之处在于,以系列迭代任务为主线进行课堂教学中将所有重点知识点打乱、重组的先后次序的独特性和创新性。本文采用的“学生成绩管理系统(简称:CJGLXT)”在教学过程中,实现了以迭代项目任务为阶段目标,由浅入深、由易到难的教学过程,不仅让学生体验项目开发的流程,又顺应了学生的学习心里特点。随着项目任务的逐步实现和项目功能的不断完善,学生对程序设计的兴趣也由淡变浓,化被动为主动,采用阶梯递进法助推教学目标水到渠成。

C语言课程创新教学环节之创新实践主要表现为:以项目CJGLXT分解的系列迭代任务串联核心知识点的重组,具体教学环节如下。①CJGLXT的功能展示页面。整洁大方的系统功能页面带给学生直观可达的学习目标,通过经典的“HELLO WORLD”程序,灵动的个人简历,渗透着Main函数的学习,打印输出语句、换行符、特殊符号的输出等,可以让学生轻松地掌握基本的C语言知识和基础技能。②CJGLXT的成绩浏览功能。任何一个真实项目涉及的数据都离不开强大的数据存储技术,让学生真心地了解到C语言的强大,彻底激发学生的求知欲和兴趣。通过成绩浏览功能,将函数调用、文件存取和数组的三座大山呈现在学生面前,从逆向思维的角度将学习目标回溯到变量的学习,并通过变量、人机互动、scanf(),格式输入输出控制符、常量及数据类型等的学习,将学生的静态个人简历升级为动态的“问答式”个人简历;利用静态简易的函数调用让学生掌握最简单的无参函数调用;通过日常接触的各科成绩来引导学生了解和学习易入手的一维数组。将文件读取等难点暂留在后续的教学环节中循环强化、逐步实现。③CJGLXT的成绩录入保存功能。在简单变量、人机交互的基础上,学生通过强化可以熟练掌握成绩录入技术,此时顺势讲解如何实现成绩保存功能,引入文件保存技术的学习。在此环节,可以将简单变量的文件保存过渡到一维数组数据的保存,从而实现学生成绩的保存功能,并且完善成绩浏览功能阶段应该讲解的文件读取技术。教师通过继续深入的引导,会让学生意识到成绩必须依附于具体的学生信息,这就引入了结构体知识的学习,从而将枯燥无味的教学变成了鲜活生动的寓教于乐的情景。④CJGLXT的成绩排序功能。通过鲜活的“学生排队”现场互动,很容易让学生理解“冒泡”排序的原理,并将其应用到学生的成绩排序。此阶段可以巧妙地让学生掌握随机数、编译预处理指令、运算符、赋值、if语句、for语句、while语句等知识的学习。⑤CJGLXT的成绩查询功能。本环节的设置重在如何让学生真正了解函数调用的魅力,实现从无参调用到有参调用的实战锤炼,进一步提升学生的综合实战技能。

上述五大环节足以涵盖C语言教学的绝大部分核心知识点,并且在教师灵活、丰富的教学引导下,将会以项目形式直观地让学生了解系统所需要实现的功能,通过分析讲解引导学生完成功能分解和实现的先后次序,能够以团队的形式画出系统功能模块图。此外,该系统还具有修改学生成绩信息、删除学生信息、清空学生成绩信息、按要求进行学生成绩排序、按要求统计学生成绩等相关功能模块。当然,根据不同学校赋予的学时不同、教学形式的不同、学生层次的不同,这些知识点既可以加以补充,也可以适当缩减,抑或控制在一定的教学深度范围内。

3.C语言课程实践方式之创新实践。在C语言课程实践环节,本文沿用程序层次填充法,这样能够有效将教学环节学生掌握的原理、想法和解决问题的思路诉诸于具体的代码来实现。本文以简单的“四则运算测试题”为例讲解如下:功能介绍:程序能够显示5道考题并每次运行程序考题会有变化,学生答对一道题得20分,答错不得分,并根据分数转化为相应的等级(优、良、中、差、不及格)。环节1:能否顺利编写并运行经典的“HELLO WORLD”程序。环节2:是否能够熟练运用变量、scanf()及输入输出控制符等技能。环节3:是否能够编写静态的5道考题?若可以,那如何让其动态化?环节3.1:引入随机数的方法形成动态的考题。环节3.2:引入for循环解决5道甚至多道考题的自动生成。环节3.3:在出题环节引入switch-case来由考官实现四则运算考题。环节3.4:学生答题时用if语句统计分数并结合switch-case实现分数转换。采用程序层次填充法,使得学生能够遵循分析问题、解决问题的逻辑思维,有步骤地将所学的知识点不经意地重复应用到现实问题中,随着教师从易到难的启发而顺利有步骤地,由简单到复杂地践行C语言课程的实践,做到理论联系实际,提升自己的综合实战技能和理论水平,与教师共同推动教学目标的实现。

三、C语言课程教学方式的建议

现代多媒体技术能通过逼真的程序运行结果来吸引学生的眼球和激发学生的求知欲,但具体的学习过程依然离不开经典的传统板书教学。教师在黑板上画出的流程图,一笔一画的动态过程为学生赢得了思维转换和理解的缓冲,具有良好的教学效果。在教学中,理论教学依然占据着重要的地位,实验室则应该具备至少两块以上的投影幕布,既便教师现场的演示,也便于学生看得清楚。学生的机位应以小组抱圆形式布置,适合学生讨论。此外,学生的考评依据根据程序填充法的原则,采用过程考核方法,根据阶段任务完成的多少给出相应的量化分数,做到公平合理。为了培养尖子生,还可以借用网络收发作业,远程辅导等方式为积极主动的学生提供更多的指导。关于教材的选择,建议选择“项目为载体,任务驱动”的国家规划教材,通过教师的加工,合理地将知识点串联起来进行项目分解,重组后进行教学,相信会取得良好的教学效果。

四、C语言课程教学创新之实践

本文在教学创新实践中,通过项目驱动教学,让学生了解C语言的魅力,让其知晓C语言到底可以“干什么”,通过分析问题让其知道需要“做什么”,结合教学进度和知识的学习引导其一步一步“如何实现”,不仅潜移默化地渗透了软件工程的思想,而且重点培养了学生分析问题、解决问题的能力。不断完善的C语言课程创新教学方法,经过近几年的推行实践,教学效果良好,数据表明创新教学模式有助于全面促进不同类型不同层次学生对C语言知识的快速掌握,在分析问题、解决问题方面的逻辑性大幅增强,并且涌现出一大批尖子生,教学质量效果显著。

参考文献:

[1]罗杰红,胡建荣.基于“四驱式”阶梯递进的《C语言程序设计》课程教学体系设计与实现[J].职业技术教育,2009,(17):28-29(52).

[2]陈战胜,王廷梅.C语言程序设计创新教学的研究与实践[J].时代教育,2013,(23):54-55.

推荐访问: 教学模式 实践 语言 课程 创新
[C语言课程创新教学模式研究与实践]相关文章