第97 0课时程序设计基础
教学内容分析
本课是走进程序世界的第1课,是程序设计知识的基础。
主题1主要介绍了程序设计语言与算法的基本概念。教材在讲述基本概念的同时,还介绍了描述算法的具体方法。表达了教材内容由理论到实践,由抽象概念到具体应用的递进关系。本课所涉及的知识,为后续课程进行c语言程序设计的学习奠定了理论基础,构建了全局的概念性的知识框架结构。
主题2以Dev-C++为例介绍了C语言的集成编译环境,描述了C语言的基本逻辑结构和基础语法,并展示了一个完整的输入、编辑、保存、编译、运行的程序设计过程。对于开展 C语言程序设计来说,了解一个基本的集成编译环境,不但有用,而且必要。教材完整地展现了C语言从输入源代码到编译到产生运行结果的全过程,这一操作技能是学习后续程序设计课程所必备的。
通过本课的学习,学生不但认识到程序和算法是推动计算机自动化工作的基石,同时还会了解到多种不同的程序设计语言,这使得学生在学习具体的c语言程序设计之前,能够对整个计算机软件工作的原理有一个全局性的认识,使之不仅见树,而且见林。教材所介绍的流程图技术通俗易懂,能够让零基础的学生很快地掌握这种描述算法的方法,这对于接下去深入学习了解编程语言的工作流程有大帮助,同时还
有利于帮助学生建立起计算思维。教学对象分析在七年级的数学学习中就有涉及流程图的概念,这对于学生学习本课内容是一个助力。除了本课流程图的专项教学以外,学生在生活中会看到流程图的身影,比方图书馆图书借阅归还的流程图,医院体检的流程图等等。尽管了这些源自实际生活的体验,但是学生在根据具体问题绘制流程图描述解决方案时候,可能还是会出现词不达意的情况,特别是针对复杂问题,如何利用流程图表达包含选择和循环逻辑的问题解决策略,将会是学生容易犯错的难点。
在小学阶段,学生曾经学习过Scratch编程,所以对于集成编译环境的概念应该不会特别陌生,但是C语言的交互方式与之前的Scratch有本质的差异,教师在教学中要注意这点。由于是第一次接触需要大量使用英文字符的编程,所以学生在输入C语言代码的时,可能会遇到一些困难,比方没有正确区分字母的大小写,或者用中文标点代替英文标点,这些都是教师要注意进行辅导和提醒的。
在第一次运行源代码的时候,学生可能会遇到一些困难,比方出现各种类型的编译错误, 由于提示信息是英文的,局部学生阅读会比拟吃力。教师要有耐心引导学生注意仔细观察辨识提示信息,到错误的根源。这一过程虽然困难,但也是引导学生不畏困难,培养科学探究精神的时机。
教学目标. 了解程序和常见的程序设计语言,以及程序的执行过程。
1.掌握流程图的基本符号及其含义。
2.能够利用流程图描述简单的算法。
3.掌握Dev-C++的启动和基本环境设置。
4.能够识别C语言的基本语法元素。
5.掌握编译运行C语言的方法。
教学重点和难点.教学重点。
(1)程序及程序的执行过程。
(2)C语言的基本语法结构Dev-C++编译运行C语言源代码的方法。
1.教学难点。
(1)使用流程图描述较为具体的算法。
⑵在Dev-C++中输入合乎缩进格式要求的正确代码。
⑶编译和调试程序。
教学方法.讲授法:教师讲解C语言程序的基本构成元素和基本语法规那么。
1.素材辅助:在有限的课堂时间内,利用微视频等教学素材,帮助学生了解程序设计语言与计算机程序之间的关系。
2.任务驱动:引导学生通过动手实践体会Dev-C++集成编译环境的工作界面,体验从新建源代码到成功运行C语言源代码的整个过程。
3.试错法:放手让学生尝试,通过不断地调试,逐步掌握C语言的各种语法特性。
4.点评示范:及时点评学生的典型错误,帮助学生排错。通过给出范例让学生实践,帮助学生提高观察能力。
教学准备.教学环境。
多媒体网络教室。
1.教学资源。
多种程序设计语言的例子,C语言代码样例。java程序设计基础视频
教学过程第9课时
一、引入新课(5分钟).展示各种常见软件(浏览器、聊天工具、绘图软件等)的图片。
1.提问:计算机能够完成各种有趣或者有用的任务,靠的是什么呢?
2.提问:计算机能够完成各种任务,是因为它安装了各种不同的软件,但是这些软件是如何生产出来的呢?
教师补充学生的问答。
3.讲解.:通过程序设计语言,人们将自己的意图设计成软件,通过软件的运行指挥计算机完成特定的任务。
电脑的程序设计语言多种多样,常见的有C、C++、JAVA、PYTHON等,虽然它们各有特点,但基本功能却大同小异,比方,一个基本的功能就是能让电脑在屏幕上显示文字。
比方我们可以让电脑计算a=b+1。(把相应的C语言代码显示在屏幕上,运行一下,展示结果。但是本节课不要求教师解释代码功能。).布置任务一。
上网查一下,上述这些程序设计语言是如何计算好b+1的。
谈一谈:这些语言计算"b+1的方式相似吗?
二、介绍新知(10分钟).展示学生的汇报成果,并进行补充。
1.讲解:其实除了我们之前提出的这几种程序设计语言,在早期的时候,计算机使用的是汇编语言甚至是机器语言。
2.提问:结合课本表4T,谈一谈汇编语言和机器语言计算a二b+1的方式与之前的高级语言相似吗?
你觉得哪种语言看起来更浅显易懂?
3.展示C语言和汇编语言、机器语言的比照图,分析:显然C语言看起来更直观易懂,所以我们现在很少使用难以记忆的机器语言或汇编语言,而采用C语言这样更加易于理解和使用的高级语言。
所有的高级语言程序通过编译或解释,最终将转化为机器语言的形式在计算机上运并得到相应的结果。
4.展示绘图软件的EXE文件,并讲解:这些可供计算机直接运行的软件,被我们称之为可执行文件,它就是机器语言的一种表现形式,同时它也是我们利用程序设计语言所生产出的最终产品。
5.讲解算法:程序设计语言是创造软件的工具,解决问题的算法指引着程序设计语言完成具体的任务。
描述算法的形式有很多种,既可以用自然语言,也可以使用流程图。
6.提问:阅读教材图4-4和图4-5,请你识别一下流程图中有哪些既定的元素类型,其中的圆
角矩形、平行四边形、菱形、带箭头的直线分别表示什么?
7.通过讨论,小结算法的特点:有穷性,确定性,可能会有输入数据,肯定会有输出结果三、练习与巩固(15分钟).布置任务二。
请用流程图的形式表达算法:输入整数L代表铁丝的长度,计算可围成的最大正方形的面积。
1.和同学交流提供自己设计的流程图。
2.总结学生的设计,对典型作品进行点钾特别要注意:
(1)此题的流程图至少要包含一个输入和一个输出。
⑵根据周长计算正方形面积的表达式。
3.布置任务三。
利用自己小学学过的scratch,把上题的流程图转变成可以运行的程序。
4.让学生互相交流自己编写的程序的运行结果。
5.讨论:之前的流程图设计对于后期scratch程序的编写起到怎样的作用?
四、拓展提升(10分钟).布置任务四。
阅读教材第54页的“实践创新”,将图4-5的流程图转换成Scratch程序,并运行。
教师应提醒学生思考:
(1)流程图中的菱形有什么含义?
⑵如果不允许使用判断,此题是否另有解法?
2.讲评图4-5,提醒学生注意:流程图中的每一个判断框都应该包括真和假两种不同的流程线输出。
展示并点评学生的Scratch代码。
五、课堂小结(5分钟)小结:本节课重点讨论两局部内容,一是程序设计语言是生产软件的工具,二是算法描述了程序解决问题的方法,指引着程序设计。最后我们介绍了一种通用的、描述算法的工具,也就是流程图。除流程图外算法还可用自然语言、伪代码进行描述。
Scratch是一种图形化的程序设计语言,随着工程规模的增大,我们更多地会使用C语言等来编写代码。
第10课时一、引入新课(5分钟)
引言:想要把我们设计的算法变成电脑上能够真正运行的软件,终究不能够靠流程图纸上谈
兵,必须要通过某种程序设计语言将它付诸实践。
对于C语言来说,Dev-C++是一种常见的集成开发环境。
跟随老师一起翻开Dev-C++,在它的帮助下编写我们的第1个语言程序。
二、讲授新知(25分钟).布置任务一:新建源代码文件,参考教材图4-7,输入完整的C语言程序,并保存。
(本任务仅要求完成源代码的输入即可,不要求学生立刻编译运行。)学生第一次输入C语言源代码,可能会遇到许多困难,教师应鼓励学生之间互帮互助,共同克服困难。
1.请学生阅读教材第55页。
2.布置任务二:参考教材:拿出不同颜的彩铅笔在图4-7中标记出C语言程序的各个元
素。
3.提问(1)如何在键盘上输入这些符号:"{}/*◊;”?
⑵为了编写C语言程序应当采用什么输入法?(教师提醒学生灰显示的局部是注释,可以不用在意)(3)TAB键有什么作用?它在键盘上的哪个位置?
(4)C语言的源程序保存之后以什么为扩展名?
4.教师点评并小结学生的回答,给出相应的正确答案。
5.布置任务三:重新审视自己刚才输入的源代码,检查可能存在的输入错误,并且进行修正调
整。
同桌之间互查代码。
6.演示编译运行C语言源代码的过程。
7.布置任务四:编译运行自己的源代码。
提醒学生注意:
⑴如果运行失败,请注意看Dev-C++下方给出的提示信息,并认真比对课本图4-7的范例,推测并查错误的原因。
⑵如果运行成功,请仔细检查自己的源文件目录下是否有多出新的文件,它是做什么用的?
8.点评学生典型的错误代码,引导学生观察Dev-C++所给出的错误提示信息。
三、练习与提高(10分钟).回顾C语言源代码的新建、编辑、保存和编译、运行的全过程。
1.布置任务五:参考课本图4-7的范例,订正实践创新局部的代码。在Dev-C++中新建一个源文件,将订正后的代码输入并尝试着编译运行,得到正确的输出结果。
四、课堂小结(5分钟).讲评实践创新局部的代码。
1.总结:在本节课中,我们完整地体验了简单C语言程序的编辑和运行过程,对于编程中遇到的一些错误,我们也了解了该如何防止和纠正。这些实践经验都是我们将来深入学习程序设计的珍贵财富。
教学反思

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。