项目驱动法在C语言程序设计中的应用

来源 :科学与财富 | 被引量 : 0次 | 上传用户:maohhmaohh
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要:项目驱动教学法是在教学过程中以项目为主线展开,把相关的知识点融入到项目的各个环节中。本文采用项目驱动教学法对C语言课程的宏观和微观设计进行了探讨。
  关键词:项目驱动教学法;C语言
  一、项目驱动教学法
  所谓项目驱动教学法是指在教学过程中以一个个项目为主线来展开,把相关的知识点融入到项目的各个环节中去,层层推进项目。通过对问题的深化或功能扩充,来拓宽知识的广度和深度,直至得到一个完整的项目解决方案,从而达到学习知识、培养能力的目的。建构主义的学习理论认为,学习的过程是学生自己在头脑中对知识的意义进行建构的过程,学生是教学过程中意义建构的主体,教师是这个建构过程的指导者、帮助者,教师组织教学过程的重要任务,就是要注意学生意义建构过程自身的特点,帮助而不是代替学生实现这个建构过程。情景、协作、会话和意义建构是建构主义学习环境的四大要素。其中,前三者是教学的手段,学生头脑中的知识意义建构是教学目的。在项目驱动教学法中,“情景”即是指整个课程的学习处在实现教师提出的设计项目的环境中,“协作、会话”是教师对学生的指导以及师生之间、学生之间的讨论,而“意义建构”则是指学生通过课程的学习,最终完成项目并基本掌握实用软件的开发要领。
  二、在《C语言程序设计》课程中实施项目驱动教学法
  (一)课程宏观设计
  所谓宏观设计是指按照建构主义学习理论的要求,课程教学以一个合适的课程设计项目为引导,以该实例设计和改进中的问题为动力,逐步深入、全面展开课程内容。全课程以核心内容贯穿,同时每次课也从有关的实际问题入手,由实例引入本堂课的内容。这样,无论是对整个课程还是对每堂具体的课程,学生的学习目标都十分明确、具体。教师授课时先演示自己开发的系统,使学生在明确任务的同时产生浓厚的兴趣。宏观设计的另一个重要任务就是教师要明确每次项目拓展所引出的C语言知识点及学生应掌握的技能,使其能够涵盖C语言程序设计的所有基本内容。如完成学生成绩管理信息系统项目,必须学习以下知识:掌握文件的建立、打开、读、写等操作;系统的组织包含数据输入、修改、查询、统计、输出等功能,必须掌握函数的调用;数据内容的组织涉及数组、结构体、链表,必须掌握数组、结构体、链表等数据对象的操作;功能的实现必须设计算法控制流程,掌握不同的流程图表示方法;功能算法的实现必须根据算法描述进行符号化语句表示;根据编写程序的源代码进行程序调试。该项目难度适中,囊括了C语言课程的大纲要求,而且与学生联系密切,使学生不必进行复杂的项目背景分析就可以进行不同程度的功能扩展。同时项目的实现能够突出程序设计“以算法为中心”求解问题的方法,是一个比较合适的项目。学生从开始模仿单一的记录添加、排序、查询、统计和记录浏览等简单程序,到利用函数、结构和指针等知识对模仿期开发的各功能模块进行扩充和完善,逐步组建学生的管理系统。
  (二)课程微观设计
  微观设计是指对每一单元、每一堂课的安排方式、教法和教学特点进行设计。在微观设计中应注意项目与授课内容的结合,以达到理想的效果。在授课开始,提出问题,指出该问题的难点,围绕授课内容引导学生进行思考。例如,学习结构体一章时,可以让学生思考如何才能存放全班同学的信息(姓名、年龄、成绩等)?以往的基本数据类型可以完成吗?由此引入结构体数组的概念。以“选择结构”一章为例,说明微观课程设计的步骤。该单元的教学知识点是掌握关系表达式、逻辑表达式和条件表达式,会使用if语句和switch语句。在教学过程中,从简单的问题着手,先要求学生自己编写程序,引入条件语句,同时在程序中讲解相关的语法知识点,提升高度。具体步骤:(1)任意输入两个数,求最大值,并输出最大值。(以此为例讲解if…else语句的用法及其执行过程)(2)扩展第一步,任意输入三个数,求最小值并输出。(引入介绍六种基本关系运算符并给出优先顺序,学习计算关系表达式的值,强调值为逻辑值。)(3)扩展第二步,任意输入三个数,并按从小到大的顺序输出。(注意讲解其中的算法,为循环语句打基础。介绍三种逻辑运算符及其优先顺序,学习计算逻辑表达式的值。)(4)移植第三步,求解符号函数,强调else子句与if语句的匹配原则。(5)推进第四步,进行if语句的多重嵌套。从键盘上输入成绩并按原则输出其等级为习题供学生练习。(6)改写第五步程序,使用switch语句构成多分支结构。(引入switch语句和break语句)(7)进行嵌套if语句与switch语句互换同时,还要注重算法分析,培养学生以算法为中心解决问题的能力。这是程序设计课程的教学重点,也是教學难点。对于C语言所涉及的算法,在精讲多练的同时还应注意这些算法之间的联系,与课程的相关内容结合。如选择法可以结合选择程序设计结构,筛选法、起泡法等算法可以结合数组、函数部分进行教学。这样,学生在熟练掌握这些算法的同时,也学习并掌握了相关课程内容,并逐渐养成在程序设计时进行触类旁通的思维模式。
  经实践检验,项目驱动教学法激发了学生的自信心和积极性,锻炼了学生的程序设计综合能力,为今后较快地参与实际软件项目的开发奠定了坚实的基础。推而广之,在很多课程中都可以实施该教学法,只有在设计课程教学内容和形式时从本课程的实际应用角度出发,选取一个可以贯穿本课程主要内容的项目,使之在教学过程中一步步完善,这门课程的教学才会成功。
  参考文献
  [1]谭浩强.C语言程序设计[M].北京:清华大学出版社,2000.
  [2]王明富,徐人凤.高职软件专业技术课程的改革与探索[J].中国职业技术教育,2004,(12).
  作者简介:刘智萍(1978-),女,江西南昌人,江西科技学院,硕士,研究方向:软件工程。
其他文献
“好的开始是成功的一半。”新课导入是整体教学的“序幕”,是课堂教学中的重要环节,是承上启下、温故知新的必然途径。新课程标准要求英语课堂以学生为主体,以教师为主导,教师应努力扮演好“导演”这一角色,充分设计每一节课的导入,这样才能使学生产生浓厚的兴趣,加强学习英语的信心,提高教学效果。那么,教师如何在课堂上当一名好“导演”呢?这就要求英语教师在课堂教学中设计自然、贴近学生生活实际的话题,从而吸引学生
3月10日,在WTO争端解决机构的特别会议上,争端解决机构基于加拿大的申请就中国对自加拿大进口浆粕的反倾销措施案(DS483)作出成立专家组的决定。加拿大认为,中国的相关措施与其在(
硕士研究生是具有较高智力、较高文化水平的特殊群体,是国家发展的主力军,是未来社会的高级人才,担负着现代化建设的重要任务,但近午来有越来越多关于研究生由于种种压力自杀的报
本刊讯 浙江欧丽数码喷绘材料有限公司在职工安全教育工作中,大胆创新,引导广大职工围绕“安全风险管理”课题畅所欲言,并以“谈惊险、讲故事、说身边安全典型事例、安全问答”
为了更好地发挥农商银行的作用,必须从完善诚信制度着手,本文就如何构建信用消费平安大道,从观念上、法制上、机制上、服务上以及政府行为上作了一些肤浅的探讨。
文章通过对影响房地产项目投资决策的主要因素分析,构建了房地产投资决策指标体系,论述了熵值法的基本原理,并采用熵值法确定相应指标的权重,运用加权灰靶决策方法科学地抉择
本刊讯(东顺集团 消息)5月3日,东顺集团经营总裁陈小龙先生与京东新通路采购业务部总经理吴双喜女士正式签约,双方达成战略合作。东顺集团旗下“顺清柔”及“哈里贝贝”等品牌生
据南方都市报报道近日,广东省江门市经信局、市环保局联合印发《江门市重点行业清洁化改造方案》,提出到2017年底前,造纸行业完成纸浆无元素氯漂白改造或采取其他低污染制浆
利用KKM技巧和GFC-空间中的Browder不动点定理,建立了GFC-空间中弱转移紧开值集值映射的极大元定理。作为应用,研究了GFC-空间中KyFan截口定理、KyFan相交定理和重合定理。我们
摘 要:在目前大学教育教学过程中,体育占有非常重要的地位。在学校体育教学中,大学体育是处在最后的一个阶段,是促进学校体育与社会体育相互联系在一起的重要阶段。通过大学体育教学有利于培养学生终身锻炼的意识,提高学生体育锻炼的能力。本文首先分析大学体育教学融入拓展训练的必要性,然后再阐述拓展训练在大学体育教学中的发展现状,最后提出大学体育教学中实施拓展训练的有效措施。  关键词:拓展训练;体育教学;有效