程序的设计课程逆向教学探索.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
程序的设计课程逆向教学探索

程序的设计课程逆向教学探索   [摘要]本文介绍了程序设计课程逆向教学法的基本含义与主要特征,并对逆向教学实践活动进行了实例分析,最后探讨了逆向教学法需要注意的几个问题,主要是要安排足够的实践教学时间,加强“教”与“学”的互动,注意逆向教学与顺序教学相结合。   [关键词]程序设计课程;逆向教学;教学策略      在理工科的课程教学中,一般都是按照定义、概念、举例、习题这样的模式进行教学,而这样的教学模式给人一种感觉:要想学好这门课就需要记住许多的定义、概念、命令,而且非常抽象、深奥、难以理解。   程序设计课程实际上是一门实践性很强的课程,学习这门课程的目的是什么?通俗的说,就是要学会编写程序,应用实际工作中,而不是停留于理论。要会写程序单凭记住定义、概念、命令是远远不够的,还得要通过反复的练习、实践,才能掌握程序设计的要点、技巧,使编写的程序符合工程要求。      一、程序设计课程逆向教学法的提出      本文提出的程序设计课程的逆向教学法正是基于在实践中掌握程序设计理论、编程技巧这一想法,笔者在实际教学中进行了一些探索。   逆向教学是一种启发式思维的教学方法,它有悖于通常人们按顺向思维考虑问题的习惯,然而正是这一特点,使得许多靠顺向不能或是难以解决的问题迎刃而解,就如数学证明中的反证法。而一些顺向方法虽能解决的问题,在逆向方法的参与下,过程可以较大简化,效率可以明显提高,并进一步深化对问题的认识,提高学生学习的兴趣。例如,我们在讲数学课时,通常先向学生讲解一些数学概念或定义,再进行概念或定义的解释,然后举例加深对概念或定义的理解,最后通过做一些习题使所学知识得到巩固,这样一个数学概念的课程就告一段落。并不是所有的课程非得遵守这样的程式去教学,对于程序设计这样的实践性很强的课程,笔者认为可以从实际出发,先尝试从实践中寻找知识点,这样能更加直观地让学生知道,程序中所包含的概念、定义等知识和一些规律、技巧等。通过逆向教学,让学生一开始就摆脱固有程式的束缚,在实践中明白需要学习哪些知识、掌握知识点在实践中的应用规律,理清学习这些知识的目的和思路。然后让学生再回到理论上来,这样对理论知识就不会感到陌生、抽象,而且建立了一条理论与实践的纽带,对理论的印象更加深刻。      二、逆向教学探索实例      在以往的教学中,一些章节按顺向教学的方法,先进行理论知识的讲解,再进行实践教学,学生普遍反映非常抽象、难学。而按逆向教学法进行教学,抽象的概念就变得具体了,学习这些概念的思路就清晰了。在C语言程序设计课程中指针[1]这一章节相对来讲学习难度较大,在这一章节笔者对逆向教学法进行了实践应用和探索。      1、在教学中,按先易后难的顺序设计教学环节   为了让学生掌握“初始指针变量”与“用赋值表达式给指针变量赋值”的概念[2]及在表示方法上的区别,我们不是先讲概念、性质或特点,而是先让学生编写几个简单的程序,如:“输入任意两个数,按从大到小的顺序输出(使用指针变量)”,学生在编程的过程中,通过简单的应用,对涉及的概念、语法等有一定的了解,部分学生能掌握这些基本概念,并明确它的用法。通过实践发现学生存在概念混淆等共性问题,再进行作如下讲解:   语句“int x,??*p=x;”与“int x,??*p;p=x;”是等价[2]的。它们都定义x是int类型变量,定义变量p为指向int型数据的指针变量,前者初始化使p指向x,后者通过赋值操作使p指向x。但“int x,??*p;??*p=x;”中的赋值语句是错误的。原因是把定义语句“int ??*p=x”与赋值语句“??*p=x”相混淆了。   学生因为有了先前的实践环节,有针对性地听讲解分析,效果明显,讲解之后,学生基本掌握了这一知识。      2、针对抽象、易混淆的概念及关键的知识点按先进行程序实践验证的方法设计教学   “指针交换”和“指针所指变量值的交换”是指针学习过程中较抽象、易混淆的概念,又是指针使用的关键知识点。我们先让学生对两个类似的程序进行调试。   通过让学生对这些程序的调试、修改、运行及对所调程序不同结果的对比,使学生建立起指针交换的概念,对指针的性质有一个基本的轮廓,了解指针的基本用法,较好地掌握这些较抽象难懂的概念,为进一步的编程作好铺垫。同时我们在程序调试过程中设计了与学生互动环节,在调试前提醒学生调试程序所涉及的概念、所要掌握的知识点,对调试过程中出现的问题及时答疑,并对共性的问题加以分析。经对这一知识点考核情况分析,效果较好。      三、逆向教学实践效果检验      为探索逆向教学方法在实际教学中的效果,以便改进教学设计,我们向学生征求意见。学生反映该教学方法使他们对课程具有更好的感性认

您可能关注的文档

文档评论(0)

189****7685 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档