基于计算思维的C语言程序设计的教学探讨

来源 :中国科技博览 | 被引量 : 0次 | 上传用户:taixiangle
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  [摘 要]计算思维是国内外计算机教育研究的热点,提出了在《C语言程序设计》的课程教学中引入可视化教学模式和系统观的教学观点。实践表明,可视化教学模式有助于将抽象的概念和问题变得直观,降低了学生的认知负荷,系统观的教学观点使学生能够站在系统的高度考虑和解决应用问题,具有系统层面的认知和程序设计能力,提高了学生的计算思维能力。最后,给出了今后努力的方向。
  [关键词]C语言程序设计 可视化 系统观 计算思维
  中图分类号:G4 文献标识码:A 文章编号:1009-914X(2016)06-0235-02
  1 引言
  计算思维是当前国际、国内的计算机科学界、教育学界关注的重要课题,计算思维的研究和发展对我国的计算机教育有着十分重要的意义。
  2006年3月,美国卡内基梅隆大学的计算机科学系主任周以真教授最早给出了计算思维的概念:计算思维是运用计算机科学的基础概念进行问题求解、系统设计,以及人类行为理解等涵盖计算机科学之广度的一系列思维活动[1]。
  目前国外关于计算思维的发展有一定的成效,2007年3月,卡内基梅隆大学和微软公司宣布建立“微软——卡内基梅隆计算思维中心 ”(Microsoft Carnegie Mellon Center for Computational Thinking),该中心将致力于计算机科学新兴领域的研究,特别是那些能够对其他学科的思维产生影响的领域;美国计算机协会(ACM)在网上公布的对CC2001 (CS2001)进行的中期审查报告(CS2001 Interim Review)中就清楚表明,要求将“计算思维”的概念及其本质加入到“计算机导论”课程当中去;美国国家计算机科学技术教师协会(CSTA)发布了名为《计算思维:一个所有课堂问题解决的工具》(Computational Thinking: A problem solving tool for every classroom)的报告,报告对什么是计算思维进行了详细的阐述,并且得到了微软公司(Microsoft Corporation)的大力支持。
  国内也有一批专家学者在计算思维方面做出了一些颇有成效的研究, 我国对计算思维的关注主要时间是高等学校计算机教育研究会于2008年10月在桂林召开的关于“计算思维与计算机导论”的专题学术研讨会,此会议专题探讨科学思维与科学方法在计算机课程教学中的推动和创新作用。对此,多数高校在研讨会之后分别在自己所在高校开展了关于计算思维的研究,桂林电子科技大学计算机学院也开设了以计算思维为核心培养的计算机导论精品课程。
  培养学生的计算思维能力应该成为计算机公共基础教学的核心任务[2]。《C语言程序设计》是一门重要的理论性和实践性都很强的计算机公共基础课,初學者普遍反映难学。计算思维的培养面临着许多挑战[3],目前仍没有有效的教学模式,仍然处于探索阶段。C语言程序设计的学习和计算思维的培养是相互促进的,计算思维能力提高后,可以更高效和深入的学习C语言程序设计,C语言程序设计的学习又能促进计算思维能力的提高。本文通过采用可视化教学模式在C语言程序设计的教学中的应用,以直观的方式讲解C语言中抽象的知识,以动态的可视化方式展示隐含在C语言程序设计中的计算思维,从而达到降低学生的认知负荷,在提高C语言程序设计的学习效果的同时,增强计算思维的能力。
  2 C语言程序设计可视化教学模式的设计和计算思维的培养
  《C语言程序设计》的知识蕴含了计算思维,掌握好C语言程序设计知识有助于计算思维能力的提高,计算思维能力的提高又促进和加深C语言的学习,这是个相辅相成、互相促进的关系。《C语言程序设计》的计算思维教学方法应重视从以下几个方面实施可视化教学模式。
  2.1 以静态图形展示基本概念
  C语言中的很多概念是比较抽象的,不易深入理解,这成了初学者利用C语言的基本语句进行解决问题和创造性思维的拦路虎。理解和使用好这些概念要求学生能够在计算机能力的限制之下计算性地思考。例如对数组的理解与使用,如果仅仅教会学生“数组是连续排列的相同数据类型的元素集合”这样的抽象知识,学生仍然难以灵活应用数组去解决问题。为了让学生直观的理解数组的特点,可以如下图所示展示出如何使用数组[4]。这样,就可以将“不可见”变为“可见”, 将“无关”变为“相关”。
  如上图所示,教师在讲解数组之前,先把变量比喻成箱子,不同规格的箱子相当于不同的变量类型,把一维数组比喻成多个无缝隙排列在一条直线上的相同规格的箱子。这样,学生就容易理解数组的能力和局限性:数组可以通过“箱子编号”随机访问数组元素,数组是通过内存的连续区域来存储数据的,使用数组时不能越界,数组元素的类型必须相同。
  2.2 问题的可视化展现
  《C语言程序设计》课程讲解的问题的逻辑结构、存储结构往往比较抽象、枯燥。生动、形象的可视化形式引出用有趣的应用实例,例如约瑟夫斯问题和汉诺塔问题,可以极大地激发学生的学习兴趣,活跃课堂气氛,可以使学生迅速、清晰的抓住问题的本质,从而把精力集中于基于计算思维的问题求解上来。
  3 C语言程序设计系统观的教学观点和计算思维的培养
  系统设计的能力是计算思维的应有之意,目前的C语言课程只是强调语法和编程能力的培养,而不能很好地培养学生的系统设计的能力。另外对于计算机硬件系统的相关课程,如数字逻辑、计算机组成原理、汇编语言、计算机微机接口技术等,学习以后,学生对硬件系统知识有一定的了解,但知识都是孤立、片断性的,更不用说具有系统层面的认知和设计能力,能站在系统的高度考虑和解决计算机系统的应用问题能力[5]。
  计算机学科主要研究的是计算机系统各个不同抽象层的实现及其相互转换的机制,计算机学科培养的应该主要是在计算机系统或在系统某些层次上从事相关工作的人才。独立学院计算机专业课程的设置按照计算机系统抽象层各层的内容学习对应的课程,如图1所示。可以清楚地看到,我们将计算机系统的各层的知识分解为一门门独立专业课程让学生学习,这些独立的专业课程好比一节节单独的火车车厢,而没有课程帮助他们帮这些火车车厢连接起来,形成一辆完整的火车,而只有完整的火车才有它本来的价值。而完整的火车即是系统观,即具备能够站在系统的高度考虑和解决应用问题,具有系统层面的认知和软件设计能力。   3.1 从系统层面构建知识体系
  我们将C语言围绕C语言程序的编译、链接和执行,从系统层面帮助学生形成计算机学科完整的知识体系,并且注重后续专业课程之间的关系和衔接能促使学生真正做到融会贯通,领略到计算机系统能力的真正涵义[6]。同时学生在大三和大四可以有更多的时间学习各个专业方向的知识,加强专业技能的训练。
  教师以C语言的编译、连接、执行为主线,结合计算机系统各大部件,具体介绍了各大部件的功能和结构,剖析了高级语言与底层计算机系统之间的关系,从而引起学生对高级语言程序编写的思考,激发学生从计算机系统的的角度学习,使其能够站在系统的高度考虑和解决应用问题。
  3.2 基于系统观的教学内容设计
  老师在讲解各个知识点的同时,要注意以实际生活中的问题和学生实际编程遇到的问题引入,吸引学生的注意。比如, 在講解程序的转换及机器级表示时,主要讲清C语言、编译、操作系统和硬件结构的关系,并且注意用汇编级的指令系统去解释C语言程序运行的结果,对出错的结果能从指令集与硬件系统的角度去理解程序的结果[7]。能从系统的角度去思考与解决问题。
  面向系统观进行教学内容设计可以让学生更多地了解学习C语言程序设计的意义。学生通过学习计算机系统与C语言的联系,可以改善编程的过程[8],能够更迅速地查明故障来源,从而减少程序中的错误,提高程序的性能,为进一步应用计算思维解决问题作好铺垫。
  4 结语
  基于计算思维的C语言程序设计的教学,是一个需要长期探索的过程,教师应在教学的过程中不断地总结,根据学生的真实感受与学习情况,加以思考,不断地进行创新与尝试,才能设计出科学合理且有吸引力的教学内容。
  参考文献
  [1]Wing J M.Computational thinking[J].Communications of the ACM,2006,49(3):33-35.
  [2]何钦铭,陆汉权,冯博琴.计算机公共基础教学的核心任务是计算思维能力的培养[J].中国大学教学,2010(9):5-9.
  [3]李廉.计算思维:概念与挑战[J].中国大学教学,2012(1):7-12.
  [4] 杉浦贤 著 李克秋 译. 程序语言的奥妙:算法解读[M].北京:科学出版社,2012: 31.
  [5] 王志英,周兴社,袁春风等. 计算机专业学生系统能力培养和系统课程体系设置研究[J]. 计算机教育.2013(9):1-6.
  [6] 李山山,刘卫东. 面向系统能力的计算机组成原理实验实施[J]. 计算机教育.2014(15):107-110.
  [7] 袁春风.大学计算机专业教育应重视“系统观”培养[J].中国大学教学.2013(12):41-46.
  [8] 常瑞,何红旗.面向系统能力的计算机系统结构课程教学内容设计[J].计算机教育.2014(10):58-61.
  作者简介:张磊(1978-) 男,讲师,汉族,天津大学仁爱学院 计算机科学与技术系教师, 研究兴趣: 模式识别与智能系统
其他文献
[摘 要]在全省高校深入贯彻落实十八大精神、学习实践科学发展观、加快推进高校改革发展的新形势下,深人贯彻落实《关于进一步加强和改进新形势下高校宣传思想工作的意见》精神,学院召开宣传思想工作会议。这次大会的主要任务是:深人贯彻落实《关于进一步加强和改进新形势下高校宣传思想工作的意见》精神,总结上半年来学院的宣传思想工作情况,安排部署下半年的工作任务,进一步加强和改进宣传思想工作和大学生的思想教育工作
期刊
[摘 要]近年来,国家对职业教育的发展高度重视。高等职业学校担负着为国家和社会培养一线人才的重要任务,其中高校的英语教学肩负着培养学生英语交际能力、培养学生职业综合素养的重要职责。当前的高职院校的教学质量还远远达不到社会和企业的要求,在教学中存在许多问题,比如教师缺乏职业教育理念、教学模式传统落后、教学实践薄弱等,再加上学生的英语基础参差不齐,缺乏学习的积极性和主动性,导致很多学生的英语水平在大学
期刊
[摘 要]创新可以说是一个民族兴旺发达的不竭动力,我们在进行告知计算机教学的时候要培养学生的创新能力,为了能够更好的培养学生的创新能力,我们首先要给学生创设一个轻松自由的学习环境,另外就是通过教学方法来激发学生的创新意识,培养学生的创新思维。在我国信息产业进行快速发展的今天,大量不同层次,不同专业的高素质人才已经开始进行迅速的发展,现在的人才发展是金字塔的发展模式,我国信息产业是一个橄榄型的人才发
期刊
[摘 要]最近几年来以"行为引导型"为核心的教学风暴使职业教育进入了一种全新的教学模式,其教学效果极佳。行为引导型教学法在电子实习教学中的应用,较好地解决了传统生产实习教学的弊端,提高了学生的学习兴趣和主动性。  [关键词]行为引导型 电子实习教学  中图分类号:G712 文献标识码:A 文章编号:1009-914X(2016)06-0264-01  目前,职业技工学校电子专业的不少学生普遍感到专
期刊
[摘 要]在职业高中班级管理过程中,为了培养学生的综合素质,就应该改变传统的管理模式,利用情感教育进行班级管理,从而有效的规范学生的行为,培养学生的综合能力,促进学生全方面的发展。  [关键词]职业高中 班级管理 情感教育  中图分类号:G635.6 文献标识码:A 文章编号:1009-914X(2016)06-0255-01  一、 用真情鼓舞激励学生  在职业高中班级管理过程中应该重视学生的德
期刊
[摘 要]班导师是高职院校班级工作的组织者和教育者,是沟通学生与家庭和社会关系的中间纽带。本文就笔者担任班导师从事班级管理过程中的亲身经历,谈一谈高职学生管理当中如何融入情感教育的观点和看法。  [关键词]高职院校 学生管理 情感教育  中图分类号:K825.89 文献标识码:A 文章编号:1009-914X(2016)06-0260-01  前言:高职院校的学生大多具有聪明、活泼、个性鲜明、对新
期刊
[摘 要]本文分析了《装饰工程识图与算量》课程教学的作用及其重要性,针对课程教学方法单一、课程教材更新较慢和实践动手能力较差等问题,基于“项目导向、任务驱动”教学,探索有效可行的课程教学改革措施,并积极实践。实践表明:学生学习兴趣得到提高,实践动手能力得到锻炼,从而有力地保障了教学质量和人才培养质量。  [关键词]教学方法,项目导向,任务驱动,教学质量,人才培养  中图分类号:G712 文献标识码
期刊
[摘 要]把工学结合作为改革的切入点,实现学生校内学习与实践工作的一致性,达到校内外实习实训基地建设规划目标,必须实践课开出率100%。  [关键词]校内实训基地 校外实训基地 实训组织和实施  中图分类号:G712 文献标识码:A 文章编号:1009-914X(2016)06-0261-01  教育部《关于制定高职高专教育专业教学计划的原则意见》,其中实践类课时占总教学时间的50%以上,把工学结
期刊
[摘 要]随着社会经济的不断发展,现代化生活节奏的日益加快以及人们生活内容和生活方式的不断拓展,居民住宅小区形象建设已深入人心。居民住宅小区是人们的一种居住模式。为了提高环住宅小区的环境美化、品位、格调,小区导向标志设计的识别性更加显得重要。本文將以形态语意为理论基础,从色彩、文字与图形符号、版式、造型和材料与工艺等不同要素方面进行归纳总结出设计方法,力求对小区环境美化,提高小区格调和形象方面起一
期刊
[摘 要]文章首先介绍了初中数学中常见的数学思想方法,总结为函数与方程思想、代数与图形结合思想以及数学分类思想。其次重点介绍在初中数学教学过程中如何渗透这些思想,通过对数学思维方式的培养,能够帮助学生提升数学成绩,更轻松高效的学习。  [关键词]初中数学;数学教学;数学思想  中图分类号:G633.6 文献标识码:A 文章编号:1009-914X(2016)06-0267-01  一、初中数学思想
期刊