61阅读

c程序设计教程-z、c、s教学设计

发布时间:2017-09-16 所属栏目:c语言程序设计教程

一 : z、c、s教学设计

【教材分析】
本课是义务教育课程标准实验教科书语文一年级上册拼音部分第7课,包括四部分的内容。第一部分是三个声母z、c、s和三个整体认读音节zi、ci、si以及它们的四声,每个声母配有一幅插图,分别提示他们的音和形;第二部分是声母z、c、s与单韵母的拼音练习以及三拼音练习;第三部分是z、c、s的书写格式;第四部分是认读字词,文中配有情景图和一首儿歌。
本课是拼音教学的第七课,通过前段时间的学习,学生已经有一定的基础了,已经初步学会了拼读音节的方法。本课是拼音学习中的关键,平翘舌音是我们这个地区的学生发音的难点,所以学好了平舌音也可以为下课学习翘舌音做准备。
【设计理念】
1.根据《语文课程标准》中“汉语拼音教学尽可能有趣味性,宜以活动和游戏为主。”的要求,针对一年级学生的身心发展规律,创设丰富多彩的教学情境,将拼音教学同有趣的儿歌、故事、游戏等活动结合起来,寓教于乐。
2.在教学中充分发挥他们的主动性和创造性,鼓励学生自主学习与探究。
3.倡导拼音教学与学说普通话,与生活相整合。
【教学目标】
1.学会z c s三个声母,读准音,认清形,正确书写。
2.能准确拼读z c s与单韵母组成的音节。
3.学会zi  ci  si 3个整体认读音节,会读他们的四声。
4.认识5个生字,会读儿歌。
【教学重点】
1.学会z、c、s三个声母,读准音,认清形。
2。学会zi、ci、si三个整体认读音节,会读它们的四声。
【教学难点】学会z c s的发音。
【教学流程】
第一课时
一、 借助儿歌引出z、c、s
大家还记得拼音王国里住着许多拼音娃娃吗?今天我们再去那玩一玩,交几个新朋友。(出示拼音王国的画面)
拼音王国到了,谁来和这些老朋友打个招呼?(复习学过的声母b p f d t n l g k h j q x)
今天拼音王国里要举行一场才艺大比拼,看,参赛的选手登场了。你能叫出这些选手的名字吗?(蚕宝宝、小刺猬、小女孩)小女孩的名字叫思思,向她问个好。他们各自展示了什么本领?(学生交流,小刺猬会扎果子、蚕宝宝会吐丝、小思思会写字)你能自己编一首儿歌来夸夸他们吗?
有个小朋友也写了一首儿歌(加拼音)来夸他们,我们一起来读一读;
小思思,扎辫子,
拿起粉笔会写字。
小刺猬,长满刺,
刺上扎个小果子。
蚕宝宝,忙吐丝,
吐出丝来结茧子。
二、 学习z、c、s的音和形
1.这首儿歌里就藏着我们今天要认识的新朋友(出示z、c、s),谁来找一找?
2.看看图,读读儿歌,想想这三个声母宝宝该怎么念?
学生自由试读,指名读,说说为什么这样读?他读得正确吗?
3.自己试着读读,发现这三个声母发音时有什么相同的地方吗?
教师小结;z、c、s在发音时都要把舌尖向前平伸,靠近上齿背。我们把这三个发音时舌尖摆得平平的声母叫平舌音。
4.再试着读读,这三声母发音时有什么不一样吗?
教师小结:发z时气流弱,发c时气流强。
5.教师范读,边示范边讲解发音方法。
6.指名读,开火车读。
7.看看图,z、c、s像什么?你能根据他们的样子编句顺口溜记住他们吗?
学生根据声母的样子自编顺口溜。
三、 学习整体认读音节zi、ci、si
1.z、c、s有一位共同的好朋友,那就是小i。小i可喜欢和他们在一起了,时间长了,他们组成了新的家庭,有了新的名字,范读(出示:zi、ci、si)
听出和z、c、s有什么不一样吗?
知道他们住在哪个房里吗?(整体认读音节房)
2.对比着读一读。
3.游戏:顺风耳
4.后来他们还生了许多小宝宝,一个个长得像极了,为了能分清楚他们,就给他们带了不同的帽子。你能分清楚吗?
zī    zí    zǐ    zì
cī    cí    cǐ    cì
sī    sí    sǐ    sì
5.这首儿歌中就有好多这样的小宝宝,我们在来读读。(思思、辫子、写字、小刺猬、小果子、吐丝)
四、 练习拼读
1.z、c、s不仅喜欢和小i交朋友,他也喜欢和a、e、u交朋友。看,这儿他就和a交上朋友了。(拼读儿歌中的zā)他们组成的新朋友还有好多。
出示: zā   zá   zǎ   zà
cā   cá   cǎ   cà
sā   sā   sǎ   sà
自由拼读,指名拼读。
2.玩游戏:打拼音牌。(看看哪些同学认识的新朋友多)
(游戏规则:同桌之间,一学生拿写有声母的扑克牌,一学生拿写有韵母的扑克牌。两个同学同时出牌,一边说我出“”,谁先拼出由两张扑克牌组成的音节,这两张扑克牌就归谁。最后,看谁手里的扑克牌多,谁就赢了。)
3.小结:哪些小朋友赢了?(举手)赢了不能骄傲,输的小朋友也不要灰心,课后多练习,争取下一次赢回来。
五、游戏巩固
小朋友们真能干,现在老师带大家去一个地方,看,这是哪?(出示超市画面)
超市里面的东西可多了,有吃的、穿的、用的。可是现在超市里缺一位售货员,都忙不过来了,谁来当售货员?
现在我们要买什么,你就给我们拿什么?
拼读音节:wà zicùhù fà sùsī guā  
  suǒguā zi      cí qìsè lā yóu     qī sè huā
六、 小结
今天游玩拼音王国,你交到新朋友了吗?
学生交流

第二课时
一、复习检查
1、猜谜:像个2字(打一声母)半个8字(打一声母)半个圆圈(打一声母)。
2、游戏:放鞭炮(练习拼读音节)
二、 看图拼读音节
1、 看图,说说图上有谁?在干什么?
2、拼读图上音节;tuō dì    cā bō li   zuò hè kǎ
(回顾三拼音的交朋友秘诀)
3、观察图,将图上的三个音节填进下面合适的括号里
bà ba:()mā ma:(     )wǒ()
4、用几句话连起来说一说图意。
七、学念儿歌,认识生字
1、自己试着拼拼读读。
    2、你会拼读哪些音节,做小老师带着大家读一读。
    3、在老师的带领下读儿歌,注意读准字音。
4、在儿歌中画出生字读一读,会了就读给自己的学习伙伴听。
5、熟读儿歌,同桌互读、小组读、指名读、做动作表演读。
6、认读生字:做  过  了   不  乐
八、拓展练习

二 : 关于程序设计教学

[内容提要]:文章首先澄清了几个易混淆的概念:计算机语言和程序设计语言;学习程序设计和学习程序设计语言。然后讨论了几个目前争论较大的问题:

1、程序设计是中学生计算机课程的基本内容吗?

2、必须“尽快终止”程序设计的教学吗?

最后提出了作者的看法:“中学计算机课程要以基础性知识和技能性操作为主,程序设计是更高层次的学习内容” 。在时间和学生的接受水平允许的情况下应该并尽可能早地在计算机课中安排一些程序设计内容,但内容和深度要根据不同年龄的学生认知特点做精心的安排。

当前关于中小学计算机课程设置的一个争论焦点是计算机课程中要不要有“程序设计”的内容,如果有,应该要求到什么程度?下面我们专门来讨论这个问题。

一、澄清几个概念

1. 计算机语言≠程序设计语言

在一些教师的脑中和普及计算机知识的书中,常把这两个概念混为一谈。例如一本全国范围发行的计算机普及读物中写道:“为了和电脑交流信息,也要通过语言,……,由于电脑语言就是用来告诉电脑按次序干什么事情的,所以电脑语言又称为程序设计语言。”可见这个问题不是个别人的问题,而是带有普遍性的问题,必须加以澄清。

什么是计算机语言?“①狭义的指计算机可以执行的机器语言。②广义的指一切用于人与计算机通讯的语言。包括程序设计语言,各种专用的或通用的命令语言、查询语言、定义语言等。”[1]现在一般采用后一种说法。

什么是程序设计语言?“泛指一切用于书写计算机程序的语言,包括汇编语言、机器语言,以及一般称为高级语言的完全符号形式的独立于具体计算机的语言。”[1]

上面两段引言很清楚地说明了计算机语言与程序设计语言之间的区别和联系。计算机语言是外延较大的概念,程序设计语言只是计算机语言下的一个属概念。“我们和计算机打交道,就要用计算机语言”这句话是对的,但用计算机语言与计算机打交道,不一定要用程序设计语言。我们用DOS命令,就是在用计算机语言棗命令语言;我们用鼠标单击某一图标,让计算机执行某一操作也是一种计算机语言。但它们都不是程序设计语言。当然这些命令语言,最后都要翻译成机器语言去执行,但这是计算机内部运行机制的问题,绝不能以此为理由把这两个概念混为一谈(否则也不用区分机器语言、汇编语言和高级语言了,因为它们最终也都要翻译成机器语言)。

弄清了这两个概念的不同,一些说法的正确与否也就不言自明了。例如有人说:“人们交流要通过语言,人要和计算机打交道,也要通过语言,所以要使用计算机必须学习程序设计语言。”前半句话指的是计算机语言,而后半句话指的是程序设计语言,由于“偷换”了概念,推理不合逻辑,结论也就不可靠了。当然说这句话的人,我相信绝不是有意的诡辩,而是由于概念的混乱,自己欺骗了自己。 我们使用计算机,和计算机打交道,一定要学习计算机语言。我们学习DOS命令,学习Windows操作,就是学习管理计算机资源的语言。我们学习某种应用软件的操作,也是学习计算机语言。总之,我们在学习计算机知识的过程中一直在学习计算机语言,一直是通过计算机语言和计算机打交道,但这不是程序设计语言。也就是说,学习使用计算机,一定要学习计算机语言,但不一定要学习程序设计语言。

2. 学习程序设计≠学习程序设计语言

在讨论中另一个模糊的概念是把学习程序设计和学习程序设计语言混为一谈。

我国著名的科学家马希文教授写道:“用一串符号把一个计算机过程描述出来,就是一个程序。……要制定一些严格的规则,以确定什么样的符号表示什么样的程序。这些规则的总和就叫做一种语言。”[2]

马希文教授又接着写道:“一个完整的程序设计过程大体有以下几个步骤:(1)要把程序的功能描述清楚。……(2)用程序语言把预定的计算方案书写出来。这是程序设计中最有特色的部分。简单的计算可以直觉地进行程序设计。复杂的计算往往可以由简单的程序按照各种模式搭配而成。然而,却没有一种机械的办法可生成各种程序,换句话说,程序的设计是一件具有创造性的工作。(3)证明程序的正确性。……(4)在实际工作中,试算和修正是不可缺少的。” [2]

从上面两段引言中可以看出,语言是“严格的…规则总和”,我们学习一种程序设计语言,就是学习这种语言的规则,即学习语法、语义、程序及其他一些规定。这里涉及的是严格的定义,严格的书写方法,没有任何的创造性可言(一个字母一个标点都不能错)。而学习程序设计是学习“设计过程”,内容主要是描述功能、书写方案、证明正确性和试算和修正。程序设计“是一件具有创造性的工作”,两者有着根本性的区别。 当然学习程序设计一般应选用一种语言作为工具,学程序设计就必须学程序语言,学习时两者是不可能绝然分开的。但问题是各自的地位是什么?以哪个作为重点?我们中小学的教学目标是什么?是让学生掌握一种程序语言呢?还是把程序语言作为一种载体,一种学习程序设计的工具,而把教学目标和重点落在程序设计的思想方法上?这就是当前计算机教学中的带根本性的分歧点。目前很多计算机教师在进行程序设计教学时,往往把很大的精力,甚至是主要精力放在语法和语义上,他们不自觉地把程序设计的课上成了“程序语言”课,违背了我们的教学目标,原因就是没有真正区别清楚程序设计和程序语言这两者之间的不同。

二、程序设计是中学生计算机课程的基本内容吗?

1.一部分人明确地提出计算机课中必须有程序设计内容,理由是“它是计算机学科的核心内容”。这里涉及到两个问题,一是程序设计是否是核心内容;二是中学计算机课程是否应该按计算机学科专业要求来设置内容。

对于第一个问题,在大学计算机本科教学计划《计算机教学计划1993》中列出了计算机学科主科目有九项,而“程序设计”仅是其中一项[3]。为什么在9项中只选择了“程序设计”这一科目为核心科目?为什么不选其他科目?理论上和实践上的根据是什么?

对于第二个问题早有定论,中学是基础教育不是专业教育,课程应该主要根据社会的需要来设置,同时考虑学生的接受能力和学科本身的需要。提出上述看法的人,不自觉地受到了“学科中心论”的影响,其理论基础就是错误的,因此论点也就不能成立。

2.有人认为,选“程序设计”内容是因为它可以培养学生的“分析问题和解决问题的能力”。这个论点在一定条件下说是正确的。我国十几年来在国内外计算机程序设计竞赛中,涌现出大批的优秀人才,这些学生的分析问题和解决问题的能力,通过程序设计锻炼确实有不同程度的提高,他们进入大学后的表现也证明了这点。 但研究任何问题不能脱离实际抽象地论证。我们这里谈的不是竞赛,不是少数优秀学生的课外活动,而是全体学生都要学习的计算机课程,即素质教育。目前我国计算机课一般在高一开设,总共只有60-70学时。在这几十学时内要学习计算机基本知识、基本操作,还要学习应用软件的使用以及操作系统的初步知识。这样留给学习程序设计的时间至多只有30多学时。在这样少的课时内,能学多少程序设计的内容?全体学生能达到什么水平?分析问题和解决问题的能力能有多大提高?根据笔者十几年的教学实践,至少需要40以上学时大部分学生才能学会初步BASIC程序设计,80以上学时才能进行真正的程序设计(算法设计),这时候才能真正谈及能力的提高。

另外,我们这里讨论的不是一些小问题,而是涉及到国家政策的制定,关系到千百万学生的大问题。因此结论必须有比较可靠的理论和实践根据,只凭个人直觉和的经验是不够的。提出这一结论的人能拿出什么比较可靠的科学的依据证明这一点?目前我们还没有看到。而国外一些实验却对这一假设作出了否定性的结论。美国的玛霞·林和她的同事在1985年的一份报告中表明,“在普通学校,学生在学习程序设计语言时,一般能力是重要的。能力低的组,最后程序设计语言成绩评定也低。能力高的组,最后成绩也高。”[4]美国银行街的柯兰德等人的报告也指出:“要成为程序设计的专家,至少要有500小时以上的上机时间,而大部分只有10-12台微机用于程序设计课的学校,上机时间很少,即使一些学生家里有计算机,对他们最后程序设计能力的测量,效果并不显著。”[4]虽然我国与美国相比有很多特殊性,美国的结论不能照搬到我国来,但还是有很大参考价值的。 因此,在较短时间内的程序设计课,能否使大部分学生的分析问题和解决问题的能力有所提高,仍是需要研究的课题。

3.有人提出学生学习BASIC程序设计目的是为了使他们懂得“计算机能做什么,是怎样工作的?”

这句话如果是在70年代或80年代初讲的,有一定的道理,因为那时计算机软件还很不丰富,使用计算机解决问题,大多数情况下还必须使用者自己编程。并且在编程时必须了解计算机的软硬件结构和工作过程。但在计算机的软、硬件的功能、数量和质量极大发展的90年代,还拿来作为学习程序设计的主要理由,似乎有些过时了。目前在简单的BASIC程序设计和具有强大功能的应用软件之间已产生了一道鸿沟,两者之间差距非常大,要通过简单的BASIC程序设计学习来了解现代计算机系统的功能,犹如“瞎子摸象”。在应用软件中表现出来的一些计算机能力,在简单的BASIC程序设计中很难得到。例如文字处理软件中的块操作和排版功能,超文本链接功能,在简单的程序设计学习中就很难体会到。反之,通过应用软件学习所能了解的计算机功能却大大超过简单程序设计中的功能。例如应用软件中的打印功能已大大超过BASIC中PRINT(打印)语句所能了解到的功能;输入功能也大大超过INPUT语句所能提供的信息。

马希文教授也早就指出:“我们研究程序设计时,可以选用一种适当的语言。这样,我们就可以只研究用语言书写的程序,而不去过问这种程序在具体计算机上到底是怎样实现的。从这个意义上说,语言就是一种抽象的计算机。”[2]也就是说学习程序设计,特别是高级语言的程序设计,了解的是抽象的计算机。什么是“抽象”?抽象就是“从许多事物中,舍弃个别的、非本质的属性,抽出共同的、本质的属性。程序设计中的抽象,马希文教授在上面这段话中已说得很明白,即“只研究用语言书写的程序,而不去过问这种程序在具体计算机上到底是怎样实现的。”。既然舍弃了“在具体计算机上是怎样实现的”内容,怎么能通过程序设计来懂得“计算机能做什么,是怎样工作的”呢?

当然上述说法在一定意义上还是有可取之处。一个计算机系统可以被看作是由硬件和软件按层次方式构成的,每层表示一组功能和一个接口。每一层都在一定深度和范围反映计算机系统的功能和工作状况[5]。学生们学习应用软件的知识和操作只是从最高层面上了解计算机的功能和工作状况。而学习程序设计则是从更深一层面,即语言处理层面来了解计算机的功能和工作状况。因此我认为如果上述说法改为“学习程序设计是从更深的层面,从语言处理的层面上了解计算机能做什么,是怎样工作的。”就无可非议了。

三、必须“尽快终止”程序设计的教学吗?

1997年国家教委收到了两封信件,一是联合国(UNDP/CPR)首席技术顾问大卫·艾伦写的;另一封是纽约市立大学约克学院传播技术级电脑中心主任黄哲操写的。信中他们对我国的计算机教育事业提出了很多好的建议,但也以美国为例对我们发出了警告:“尽快终止中小学作为普遍的教学要求的计算机语言课”“如不彻底改变方向,一切证据表明中国中小学计算机教学将面临最大的灾难。”

对于这样严厉的警告,我们应如何看待?当然应当认真地研究他们的建议和批评,吸取其中有用之处。但我认为,最了解中国的是我们自己,中国和美国相比较,在经济发展上,在文化传统上有很大的差别。在美国是好的经验,在中国不一定是好的;在美国行不通的、失败的办法,在中国可能会成功。我们已经有了十几年的计算机教育经验,我们必须根据我国的国情,来决定我们的政策。

我国的一些教师也有以上类似的看法,他们认为:“计算机学科没有必要学习程序设计,只需要学习计算机操作方法和一些社会上流行的软件使用就可以了。”而且还提出了“一些学生在学校学习了程序设计,到社会上完全无用,仍需从头学起”的说法。 由于计算机信息技术的发展,大量的软件涌现,计算机处理各种信息的速度和功能大大提高,一般的应用都有现成的软件,不必要自己编程。因此上面看法有其正确的一面。过去的计算机课教学,由于各种原因以BASIC语言教学为主,忽视和根本没有实际操作和应用软件的使用。不论是中学还是小学,不论是普通中学还是职业高中,无一区别都是一个模式。因此在一定程度上造成了学非所用的结果,特别是对准备毕业后立即就业的那部分学生。

但上述说法从基本点上、从理论上说是不正确的。首先,这种说法指导思想是受了“社会中心”论的影响,即当前社会上需要什么就学什么,是一种急功近利、实用主义的做法。

我们不反对从社会需要出发来考虑课程的设置,不但不反对,而且要提倡。我们也不反对学习一些实用的应用软件,而且赞同在新教材中增加一些应用软件的内容(我个人认为,在初中的计算机教材中,实用部分可以占全部内容的 70%到 80%)。但在这里,我们和持这些观点的人有一个根本上和原则上的区别:我们不但考虑社会当前的需要,而且更注重社会长远的需要。我们不但着眼于学生当前学习和就业的需要,更注重学生将来的学习以及终生教育的需要。出发点不同,在内容的选择上,在教材的安排上,以及在教法上,就会有根本性的区别。 上述观点第二个错误是混淆了不同教育的性质。普通中小学教育是素质教育,它与职业教育不同。上述观点把素质教育与就业教育等同起来了。

就是职业教育,上述观点也是不完全正确的。我们教给学生的不仅仅是知识和技能,而更重要的应该是能力。这就不能是“知其然,而不知其所以然”。不懂得汽车的基本原理也能开车,但绝不可能成为一名优秀的驾驶员。同样道理,如果只会一些具体应用软件的使用,不懂得有关的基本原理和知识,就不可能很好地使用计算机,成为一名优秀的计算机应用人员。我很赞同下面一段很有哲理性的话:“必须坚持技术基础教育和实用技术教育兼顾,... 如果不进行技术基础教育,就缺乏后劲,难以掌握高技术;如果不学习当地的实用技术,就不易起步,难以把最基本的科学技术运用于生产,把可能的生产力转化为现实的生产力。……按照布鲁纳的知识迁移理论, 扎实的技术基础教育,有利于学生去掌握实用技术,起到举一反三作用;良好的实用技术教育,有利于扩展和提高技术基础教育,起到触类旁通的作用。”[6]而且将来的社会职业的变动将是很频繁的,一生中职业变动四五种是常事。这就更要求我们的教育从学生的长远着想,注意基础知识的教育,注意能力的培养。

四、程序设计方法尽可能早学习

我认为计算机课程还是应该安排一些初步的程序设计的内容,而且越早越好。为什么要安排一些初步的程序设计内容?我的理由与上述的几种不同。

第一个理由是,计算机学科有于其他学科很不同的特点。关于这一点,当代著名的计算机科学家唐·依·克努特(D.E.Knuth)在他的巨著《计算机程序设计技巧》中有很精辟的论述。他写道:“能把问题的解法表达成计算机能够‘理解’的一种明显形式(这些机器没有普通的感觉;它还不会‘思考’。但它能准确地不折不扣地去做让它做的事情。当一个人初次试图使用一台计算机时,这是最难以掌握的概念)。”[7]。但是这个“最难以掌握的概念”又是真正学会使用计算机所不可缺少的。怎样来掌握它呢?经验告诉我们,学会计算机的初步操作,学习一些应用软件的使用,能初步了解这个概念。但是要真正理解和掌握这个概念,学习程序设计是一个较好的途径。程序设计要建立数学模型,要进行算法设计,这些就是克努特所说的“把问题的解法表达成计算机能够‘理解’的一种明显形式”;在用计算机语言进行编程时,就要了解有哪些语句,它们的功能的什么。这些实际上就是了解计算机“能准确地不折不扣地去做让它做的事情”。

第二个理由前面已说及,即学生们学习应用软件知识和操作只是从最高层面上了解计算机的功能和工作状况。而学习程序设计则是从更深一层面,即语言处理层面来了解计算机的功能和工作状况。

第三个理由是程序设计虽然不是计算机科学核心课程,但它是一个基础课程。计算机学科的其它课程,如操作系统、数据结构等,除学习一些理论外,很重要一项就是在计算机上实验,这些实验大部分要编程序,也就是要会用一种计算机程序设计语言编制相应的程序。所以大学计算机专业都把学习一种程序设计语言作为基础课程之一。如果在中学就给学生打下这方面的基础,就有利于学生今后的继续学习。那些在中学已学会了程序设计的大学生回来的反映,很清楚地证明了这一点,我们的基础教育任务之一是为高一级学校培养后备力量,也为学生将来进一步深造打下良好的基础。在中小学打下程序设计的基础,有利于他们进入大学的深造和就业以后的继续教育。

为什么要“尽可能早学习”呢?在计算机普及工作中,很多教师都有这样一种体会,只要内容和教法适当,程序设计入门,初中学生比高中学生容易,甚至高年级小学生比初中学生容易,最困难的是成年人(这里不是针对个别人,而是大多数人来谈的,即从统计的角度来谈的)。这种“怪”现象如何解释呢?

根据现代认知心理学的理论,人的头脑中的知识,不是杂乱无章地或简单地存储着的,而是有一定的结构,即认知结构。学习就是科学的逻辑结构和人的头脑中的认知结构之间的矛盾和转化。“当儿童认识一种新事物时,总是先用原有的图式(即认知结构)去同化(即把新知识纳入原有的认知结构中),如获成功,便得到认识上的平衡,否则就进行异化,调整原有图式或创造新图式,直至取得新的平衡为止”[8]。

程序设计是一种新的知识结构,它与其他学科的结构,如数学知识结构、物理知识结构等,有很大的区别。唐·依·克努特的论述中提到“这是最难以掌握的概念”,为什么“最难以掌握”?就是因为这种知识结构与以往人们学习的知识结构有很大的不同。

因此当一个初学者学习程序设计时,在把这种新的知识结构纳入自己原有的认知体系中(同化)时,由于结构差别太大,就会遇到原有结构的“顽强抵抗”,必须创建新的认知结构。而在这种新的认知结构的创建过程中,如果原有的认知结构越牢固,创立就越困难。一般地说,年龄越大认知结构就越牢固,越不容易改变。这就造成新的结构建立成人比高中生困难,高中学生比初中学生困难的现象,而小学生头脑像一张白纸,最容易接受新的东西。

从上面的分析,可以得出这样一个结论:尽早地学习“程序设计”这种知识,就会减少进一步学习的障碍。当然这种“程序设计”知识结构对于不同年龄的学生,它的内容多少,它的复杂程度的高低应该是不同的,应该有层次、有区别的。

1994年,联合国教科文组织(UNESCO)委托国际信息处理学会(IFIP),编写了指导世界各国计算机课程设置的文件《中学信息学课程》。其中有一段话,对于我们每个从事计算机教育的人会很有启发。现摘录如下:

“这里所指的程序设计非技术性的程序设计,更确切地说应该是把‘你自己做的事情’转变成‘别人能做的事情’。这就要求能详尽地描述完成任务的过程,以便其他的人或其他的设备能准确地重复这一项工作。

这种完成任务的‘自动化’就被称作程序设计,有时也称作算法程序设计──信息学的一个重要特点。当使用复杂或先进的软件工具(如电子表格、数据库管理系统、操作系统,甚至文字处理系统)时,用算法的思想来思考或解决问题是必要的。

程序设计是帮助学生获得解决问题经验的一种快速、明确而适合的途径,教学的目标不是培养‘小型的程序员’,而是使得学生能用程序设计的方式进行思考。本着这个思想,在学习过程中只要掌握‘必须了解’的,至于程序语言中的独有的特点和假设就不是很重要了。教师必须强调解决问题的方法,程序设计只是实现这个目的的一种手段。”[9]

儿童心理学中有一个“关键年龄”的说法,即在儿童发展的过程中,某一种技能或能力在某一特定时期最易获得,最易形成,如果错过这个时期,效果就会差些。例如2-3岁是学习口头语言的关键年龄,4-5岁是开始学习书面言语的关键年龄等。[10]那么,儿童青少年学习“程序设计”的关键年龄是在哪个时期?这是值得心理学家和计算机教育专家研究的课题。

五、初步结论

在中小学计算机课程中究竟要不要安排“程序设计”的内容?我完全赞同《指导纲要》的提法:“中学计算机课程要以基础性知识和技能性操作为主,程序设计是更高层次的学习内容” [11]。在时间和学生的接受水平允许的情况下应该并尽可能早地在计算机课中安排一些程序设计内容,但内容和深度要根据不同年龄的学生认知特点做精心的安排。

我个人建议,在条件允许的情况下,小学高年级可以学一些LOGO语言的程序设计,其主要内容是“海龟绘图”,通过LOGO学习一些几何知识,而在程序设计上只起到“熏陶”的作用,即起一个潜移默化的作用。初中阶段可以安排一些介绍什么是程序、什么是程序设计的简单的内容,只要求学生能理解一些简单的程序就可以了,不必要求能编程。高中阶段可以较系统地学习一些程序设计知识,了解程序设计过程,能编简单的程序,但在算法设计上只要求了解就可以了。另一方面可以大力开展以算法设计为主的课外活动和选修课,给那些程序设计感兴趣的学生提供一个良好的发展环境。

【参考书目】

[1] 王攻本主编:《计算机科学技术百科辞典》1993年,405、404页。

[2] 马希文:《程序设计学》科学出版社,1985年,1页。

[3] 《计算机学科教学计划93》电子工业出版社,1995年,9页。

[4] 陈琦:《中学计算机教育文选》光明日报出版社,1987年,145页。

[5] 孙钟秀等:《操作系统教程》高等教育出版社,1990年2页。

[6] 郭福昌:《试办农村综合初中,势在必行》《课程研究》1994年4期,7页。

[7] 唐·克努特:《计算机程序设计技巧》第一卷前言,国防工业出版社,1986年。

[8] 布鲁纳:《教育过程》文化教育出版社,1982年,28,31页。

[9] 《中学信息学课程》清华大学出版社,1995年,49页。

[10] 朱智贤《儿童心理学》人民教育出版社,1996年,96页。

[11] 《中小学计算机课程指导纲要》1997年10月。

三 : 在visual_studio_2010中新建C或者C++程序(完全图解教程)

Produced by 星星虾 All Rights Reserved

本教程包含一下内容:

Visual studio 2010如何新建c++项目 ............................................................................................. 1

Visual studio 2010如何新建FORTRAN项目................................................................................... 9

Visual studio 2010如何新建c++项目

打开Visual studio 2010,在起始页中选择“新建项目”

选择模板时选择“Visual c++”,然后选择“win32控制台应用程序”,然后输入文件名,然后点击ok。

1 / 11

Produced by 星星虾 All Rights Reserved

在弹出设置窗口中选择“next”。

在应用类型选择“Console Application(控制台应用)”,附加选项选择“Empty Project(空项目)”【务必选择空项目】。

2 / 11

Produced by 星星虾 All Rights Reserved

在连接项目窗口中点击右上角的关闭。

将鼠标移动到显示窗口左边,会浮动出来“Solution Explore(解决方案浏览)”标签【程序默认是浮动的,鼠标放在上方便会自动显示出来,移走的话会自动收起】,在项目文件名上(或者“Source File”上)右击鼠标,在弹出窗口里将鼠标放在“Add(新建)”上方,在下一级菜单选择“New Item(新建项)”点击它。

3 / 11

Produced by 星星虾 All Rights Reserved

然后可以看到新建项窗口,在新建类型里选择“c++ file(.cpp)”,并输入文件名,完了点击“Add”确定。

在窗口中输入程序代码就可以运行了,按F5即可运行。

注意,运行时如果需要显示运行结果的话,需要按下Ctrl+F5【只按F5的话只能看到dos窗口一闪而过】。

4 / 11

Produced by 星星虾 All Rights Reserved

运行成功的话,下面的输出窗口会显示“Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped”。

另外,需要设置界面外观的话(白色的底纹看久了眼花,特别是在亮度较高的时候……)可以在菜单栏选择“Tools”菜单下的“Options(选项)”并点击它。

5 / 11

Produced by 星星虾 All Rights Reserved

比如设置字体和颜色,选择“Environment”下的“Fonts and Colors”。

另外,默认情况下,输出命令窗口位于显示器左侧,经常会位于我们的程序语句的上方,影响我们方便地查看程序。像这样:

6 / 11

Produced by 星星虾 All Rights Reserved

如果不希望输出命令窗口挡住我们视线的话,需要设置输出命令窗口位置的话,应该这样设置:运行一个正确的程序,右击命令输出窗口的标题栏,选择“属性”,点击“布局”选项卡,设置合适的“窗口位置”即可,左侧的窗口位置预览可帮助你选择合理的位置(输入数字后将光标换个地方即可显示预览)。

视个人需要,比如我设置为:左750,上400……

如下图所示,还可以设置窗口大小、字体等等……

7 / 11

Produced by 星星虾 All Rights Reserved

8 / 11

Produced by 星星虾 All Rights Reserved

Visual studio 2010如何新建FORTRAN项目 新建FORTRAN项目与新建c++项目一样的方法,这里不做过多说明。

选择Intel visual FORTRAN下的控制台应用,然后选择空项目,输入文件名,之后确定。

点击关闭。

在文件名上右击,选择添加,然后选择新项目并点击。

9 / 11

Produced by 星星虾 All Rights Reserved

在选择项目类型时,这里选择FORTRAN90的自由格式(喜欢的话可以选择固定格式,即图中第一项),输入文件名并确定添加。

输入程序代码,按F5或者Ctrl+F5便可运行。

10 / 11

Produced by 星星虾 All Rights Reserved

11 / 11

四 : 在visual_studio_2010中新建C或者C++程序(完全图解教程)

Produced by 星星虾 All Rights Reserved

本教程包含一下内容:

Visual studio 2010如何新建c++项目 ............................................................................................. 1

Visual studio 2010如何新建FORTRAN项目................................................................................... 9

Visual studio 2010如何新建c++项目

打开Visual studio 2010,在起始页中选择“新建项目”

选择模板时选择“Visual c++”,然后选择“win32控制台应用程序”,然后输入文件名,然后点击ok。(www.61k.com]

visual c 在visual_studio_2010中新建C或者C++程序(完全图解教程)

1 / 11

visual c 在visual_studio_2010中新建C或者C++程序(完全图解教程)

Produced by 星星虾 All Rights Reserved

在弹出设置窗口中选择“next”。(www.61k.com)

在应用类型选择“Console Application(控制台应用)”,附加选项选择“Empty Project(空项目)”【务必选择空项目】。

visual c 在visual_studio_2010中新建C或者C++程序(完全图解教程)

visual c 在visual_studio_2010中新建C或者C++程序(完全图解教程)

2 / 11

visual c 在visual_studio_2010中新建C或者C++程序(完全图解教程)

Produced by 星星虾 All Rights Reserved

在连接项目窗口中点击右上角的关闭。(www.61k.com)

将鼠标移动到显示窗口左边,会浮动出来“Solution Explore(解决方案浏览)”标签【程序默认是浮动的,鼠标放在上方便会自动显示出来,移走的话会自动收起】,在项目文件名上(或者“Source File”上)右击鼠标,在弹出窗口里将鼠标放在“Add(新建)”上方,在下一级菜单选择“New Item(新建项)”点击它。

visual c 在visual_studio_2010中新建C或者C++程序(完全图解教程)

visual c 在visual_studio_2010中新建C或者C++程序(完全图解教程)

3 / 11

visual c 在visual_studio_2010中新建C或者C++程序(完全图解教程)

Produced by 星星虾 All Rights Reserved

然后可以看到新建项窗口,在新建类型里选择“c++ file(.cpp)”,并输入文件名,完了点击“Add”确定。(www.61k.com)

在窗口中输入程序代码就可以运行了,按F5即可运行。

注意,运行时如果需要显示运行结果的话,需要按下Ctrl+F5【只按F5的话只能看到dos窗口一闪而过】。

visual c 在visual_studio_2010中新建C或者C++程序(完全图解教程)

visual c 在visual_studio_2010中新建C或者C++程序(完全图解教程)

4 / 11

visual c 在visual_studio_2010中新建C或者C++程序(完全图解教程)

Produced by 星星虾 All Rights Reserved

运行成功的话,下面的输出窗口会显示“Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped”。[www.61k.com]

另外,需要设置界面外观的话(白色的底纹看久了眼花,特别是在亮度较高的时候……)可以在菜单栏选择“Tools”菜单下的“Options(选项)”并点击它。

visual c 在visual_studio_2010中新建C或者C++程序(完全图解教程)

5 / 11

visual c 在visual_studio_2010中新建C或者C++程序(完全图解教程)

Produced by 星星虾 All Rights Reserved

比如设置字体和颜色,选择“Environment”下的“Fonts and Colors”。(www.61k.com]

另外,默认情况下,输出命令窗口位于显示器左侧,经常会位于我们的程序语句的上方,影响我们方便地查看程序。像这样:

visual c 在visual_studio_2010中新建C或者C++程序(完全图解教程)

visual c 在visual_studio_2010中新建C或者C++程序(完全图解教程)

6 / 11

visual c 在visual_studio_2010中新建C或者C++程序(完全图解教程)

Produced by 星星虾 All Rights Reserved

如果不希望输出命令窗口挡住我们视线的话,需要设置输出命令窗口位置的话,应该这样设置:运行一个正确的程序,右击命令输出窗口的标题栏,选择“属性”,点击“布局”选项卡,设置合适的“窗口位置”即可,左侧的窗口位置预览可帮助你选择合理的位置(输入数字后将光标换个地方即可显示预览)。[www.61k.com)

视个人需要,比如我设置为:左750,上400……

如下图所示,还可以设置窗口大小、字体等等……

visual c 在visual_studio_2010中新建C或者C++程序(完全图解教程)

7 / 11

visual c 在visual_studio_2010中新建C或者C++程序(完全图解教程)

Produced by 星星虾 All Rights Reserved

visual c 在visual_studio_2010中新建C或者C++程序(完全图解教程)

8 / 11

visual c 在visual_studio_2010中新建C或者C++程序(完全图解教程)

Produced by 星星虾 All Rights Reserved

Visual studio 2010如何新建FORTRAN项目 新建FORTRAN项目与新建c++项目一样的方法,这里不做过多说明。[www.61k.com]

选择Intel visual FORTRAN下的控制台应用,然后选择空项目,输入文件名,之后确定。

点击关闭。

在文件名上右击,选择添加,然后选择新项目并点击。

visual c 在visual_studio_2010中新建C或者C++程序(完全图解教程)

visual c 在visual_studio_2010中新建C或者C++程序(完全图解教程)

9 / 11

visual c 在visual_studio_2010中新建C或者C++程序(完全图解教程)

Produced by 星星虾 All Rights Reserved

在选择项目类型时,这里选择FORTRAN90的自由格式(喜欢的话可以选择固定格式,即图中第一项),输入文件名并确定添加。(www.61k.com]

输入程序代码,按F5或者Ctrl+F5便可运行。

visual c 在visual_studio_2010中新建C或者C++程序(完全图解教程)

visual c 在visual_studio_2010中新建C或者C++程序(完全图解教程)

10 / 11

visual c 在visual_studio_2010中新建C或者C++程序(完全图解教程)

Produced by 星星虾 All Rights Reserved

11 / 11

visual c 在visual_studio_2010中新建C或者C++程序(完全图解教程)

本文标题:c程序设计教程-z、c、s教学设计
本文地址: http://www.61k.com/1080265.html

61阅读| 精彩专题| 最新文章| 热门文章| 苏ICP备13036349号-1