C语言教学引导与实践设计方法研究

来源 :中国电力教育 | 被引量 : 0次 | 上传用户:chinalaobi
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:针对学生在C语言程序设计学习中,在逻辑思维建立与题目分析求解方面存在的问题进行了深入探讨,提出了设问引导构思法、一题多解算法比较、框架教学法、实验题目设计的层次化与多样化等思想。通过多年的实践教学表明,这些方法对提高学生学习兴趣、引发学生积极思考与提高编程实践能力有较好的效果。
  关键词:C语言;教学引导;课堂教学
  作者简介:刘亚辉(1974-),女,河北任丘人,北京信息科技大学计算中心,副教授;李桂芝(1971-),女,辽宁开原人,北京信息科技大学计算中心,高级实验师。(北京 100192)
  基金项目:本文系北京信息科技大学2012年度高教研究课题资助(项目编号:2012GJYB15)、黑龙江省高等教育学会高等教育科学研究“十二五”规划课题(项目编号:HGJXHC110662)、黑龙江省教育科学规划课题(项目编号:GBD1211026)的研究成果。
  中图分类号:G642.0 文献标识码:A 文章编号:1007-0079(2013)23-0080-02
  C语言是大学生学习程序设计的一门入门课程,也是后续计算机专业课如数据结构、编译原理等课程的基础。其教学目的是让学生建立基本的编程思想、掌握程序编写与调试的基本技能,运用所学知识解决基本实际应用问题,而教学目标的实现应是以激发学生学习兴趣,调动学生主动性参与学习实践为基础。在C语言教学改革的研究中,通过比较众多版本的优秀教材,[1-3]不难发现:教师在授课过程中灵活运用教学技巧将教学内容合理编排、授课过程中有意识进行思维引导以及合理选择与设计实验题目,是提高学生学习主动性与实践能力不可或缺的关键要素。而传统枯燥的语法讲解、快速翻阅幻灯片、挤压式的编程训练会让大一的新生们心理上畏惧与反感,教师无意识的“填鸭”教学影响了教学质量。本文结合教学实践,将教学过程中的一些实用教学方法以及实验题目层次化与多样化设计方法进行阐述,这些方法在激发学生学习的积极性,提高课堂教学效果上有一定的借鉴意义。
  一、教学引导
  1.从已知到未知
  从已知入手,学生在高中阶段已经储备了足够的数学知识,并熟悉多种函数的应用与计算。所以在第一节课,教师不但可以演示简单的Hello入门程序、输入与输出语句,而且可以配合讲解并演示sin(x)、cos(x)以及ln(x)等函数的复合运算。学生自然感悟到:原来编程可以算数学题。此外,还可以结合专业知识演示C语言的应用,例如:结合Matlab、Opencv演示C语言在数学计算、数字图像处理等领域的应用,让学生初步对编程的用途有所了解,这样学生会有目的地学习,而不是不知学为何用。
  2.设问引导构思,同步编程演示
  教师在讲解算法或题目时,采取同步编程演示的方法要好于对幻灯片不厌其烦多次讲解。可以从数学思维角度引导学生勾勒自己的编程思路,并配合编程,使学生比较容易理解教师的思考过程。首先,在提出问题时,要先听学生的想法,而不是填鸭式灌输教师的思想,学生的奇思异想有时也可以开拓教师的思路,可谓教学相长。其次,在讲解时,可以采用设问方式引导学生一步步主动而深入思考问题的求解方法。思路确定后,对于怎样将想法演变为代码,循序渐进引导学生顺理成章把想法实现,这会让学生增加学习的信心。例如:求10个数中的最大值问题。求解这个问题的方法不唯一,教师可以在与学生进行算法沟通后,编程时比较不同算法(方法一、方法二,见图1)。同时,进一步让学生思考只用循环与用数组求解的不同之处,最小值、求和以及平均值的求法,举一反三,程序该如何修改?
  3.算法比较,一题多解
  学生在上机时,会对同一题目写出多样的程序,注重不同算法的比较,一题多解,有助于学生学习好的算法,同时也尊重了学生的独立思维。例如:输入500个0-20的整数,统计每个数出现的次数。可以引导学生思考:循环多少次?怎样统计个数?根据已学知识只用if语句可行吗?与循环语句结合该怎样写?比较图2所示(a)、(b)、(c)三个算法,可以看出(c)算法较好。
  4.框架结构法
  在读程序时,初学者容易混淆语句间的关系,在if语句与循环语句同时出现时,除了借助流程图外还可以辅助框架结构,将循环语句、if、switch以及其所属语句关系用框架分割,以帮助学生理解复杂程序。
  5.循序渐进,任务驱动,“滚雪球”式学习
  对授课者来说,在有限的学时内完成授课,若再进行一定的综合题目训练是有一定难度的。但是,可将综合问题化解到各章。在讲解输入、输出语句的使用后就可以让学生完成简单的菜单显示;在讲选择时,可以进一步进行菜单的选择设计;在讲循环时,再添入某一位学生的各门课成绩累加求和、求平均值;在讲解数组后就可对多位学生的成绩求和、求平均、求最值;讲函数后可以进一步将程序模块化,包括数据录入、查询、修改、删除,统计计算等;讲授结构体、文件与链表后,可以建立存储学生的信息、动态结点访问。随着对学生成绩管理系统功能的逐步完善,学生对运用程序开发设计不但有了基本的认识,同时通过教师有意识的串联讲解,也可让学生在有限的课时内完成综合题目的练习。[4]
  二、实践设计
  C语言实验教学平台能够完成学生题目的自动判题,有效促进了程序语言的教学改革。但是,题目的选择与题型设计对教学平台的设计提出了更高的要求。
  1.实验题目层次化选择
  在学习编程时,学生理解接受知识的能力是有差别的。在设计题目与设置要求时,对少数有编程基础的学生,可提出与解决实际问题难度适中的题目;对初次接触程序但理解能力较强的学生,可将布置的题目逐步引申,促使学生循序渐进对所学知识点加深理解;对编程入门较困难的学生,鼓励其用课堂所学语句模仿编程,以帮助学生消化理解所学内容,并掌握基本的程序调试方法。
  2.实验题型多样化设计
  C语言实验教学平台主要以选择题与编程题为主。在题目设计中还可以适当根据知识点添加程序改错或填空题型,以提高程序调试能力并降低部分题目的编程难度。除了基础的编程题型外,还可设计有趣的题目,解决如:歌手大奖赛、青蛙过河、对联文字逆序输出、密码破解以及手机通讯录等实际问题。
  3.小组协作互助学习
  有的学生比较内向,遇到困难时一般不会主动求助于教师。在上机时,如果让快速完成题目的学生协助完成,不但增强了他们的自信心,也有助于这些学生的问题能够得到及时解决与反馈。此外,还可以适当布置有一定综合性的题目,让每组对题目进行模块划分,讨论、协作完成并在课堂讲解,教师进行即时点评,这样可以激发学生学习的兴趣与主动性,并使教师及时了解学生对知识点的掌握情况。
  4.改革考核方式
  在期末考核中,应逐步加大上机考试,尤其是平时实验成绩在期末成绩中的比例,这也是督促学生重视编程实践的方法之一。
  三、结论
  本文对C语言教学中引导学生问题求解构思、算法比较、框架辅助教学、实验题目层次化设计、题型多样化设计等方面进行了阐述,这些方法对激发学生学习兴趣,提高编程实践的主动性与培养编程能力有一定的效果。
  参考文献:
  [1]谭浩强.C程序设计[M].第三版.北京:清华大学出版社,2007.
  [2]何钦铭,颜晖.C语言程序设计[M].北京:高等教育出版社,2008.
  [3]苏小红,孙志岗.C语言大学实用教程[M].北京:电子工业出版社,2012.
  [4]陈婷.C语言程序设计实验教学改革与探究[J].实验技术与管理,2010,27(10):182-184.
  (责任编辑:刘辉)
其他文献
摘要:在多年“工程电磁场”的教学过程中总结出两点教学思路:注重引导学生进行科学的、工程的思维,使学生由被动变为主动;注重工程应用,提高学生学习工程电磁场的积极性。依据以上教学思路,针对“工程电磁场”难教难学的实际问题,围绕嘉兴学院高水平工程应用型人才目标,在已有的教学基础上,探索出一条适合该校少学时的“工程电磁场”理论教学的方法。  关键词:工程电磁场;少学时;教学改革  作者简介:傅文珍(198
小学数学新课程标准中指出,提倡自主学习,学生的活动应当是一个生动活泼的主动而富有个性的过程.因此,数学教学就应当是最大限度地启发学生积极地进行数学实践活动的过程.
期刊
范德比尔特说:“一个充满自信的人,事业总是一帆风顺的,而没有信心的人,可能永远不会踏进事业的门槛.”这说明自信心是成才的重要条件,它在少年心理健康教育中的价值已被社会
期刊
在中职学习阶段,数学是非常重要的,但是对于很多刚刚进入中职学习的同学来说,他们都难以尽快的适应中职的学习生活,尤其是数学这样一门有高难度、深度的学科,他们显得有些手
摘要:“高等数学”作为本科院校教育中一门基础课程,尤其对上海电机学院这样新建的应用技术本科院校的教育成效起着举足轻重的作用。针对上海电机学院学生的基础水平和专业特点,从教学思想、课程内容调整、教学手段和考核方法等几方面,分析了“高等数学”教学改革。  关键词:高等数学;教学内容;教学方法  作者简介:戚建明(1981-),男,江苏盐城人,上海电机学院数理教学部,讲师;朱泰英(1964-),男,朝鲜
当前对幼儿教育越来越加以重视,同时其出现的幼儿教育小学化的问题却呈现蔓延的趋势.论文作者立足于多年的工作实践,对幼儿教育小学化问题进行了研究.论文分析总结了幼儿教育
信息技术与课程进行整合,其实质就是学习对象、工具以及教学工具与对应课程的融合,这三者共同为课程教学内容和过程服务,从而达到课程要求的教学目标.基于此,本文从中职学科
摘要:计算思维能力是大学信息素养教育的需要,在程序设计课程的教学过程中,贯穿了计算思维能力的培养。结合教学经验,分析了“Access程序设计”课程的特点,提出了如何在教学过程中培养大学生的计算思维能力,并给出了具体实施方案。  关键词:计算思维;逆向教学;实例库  作者简介:楚艳萍(1971-),女,河南叶县人,河南大学软件学院,副教授;何欣(1974-),男,河南开封人,河南大学软件学院,副教授
现代教育技术是我国高师院校教师教育课程体系中一门重要的公共基础课程,该课程的目标是使学生掌握教与学的基础理论、具备在教育教学中运用教育信息技术的意识和能力。为适应新课程改革的需要,促进教育的现代化和教师专业化发展,教育部于2004年12月正式颁发了《中小学教师教育技术能力标准(试行)》,《标准》明确规定了中小学教师在教育技术方面的专业要求。作为未来教师的师范院校学生,高水平的教育技术能力同样是一项
在初中英语教学中,英语语法的教学既是学习的重点,又是学习的难点.对于初中生来说,由于知识储备较为欠缺,对于英语语法的知识基础也是较为薄弱,学起来较为困难.同时加上英语