版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第一阶段程序设计入门教学章节名称单元1让我们和计算机对话吧!授课教师授课班级学时4授课日期教学地点教学M标能力目标熟悉VC、C-Free运行环境,掌握开发环境的搭建方法,了解项目要求,提高操作能力和动手能力。知识目标•介绍C语言出现的历史和特点:•了解简单c程序构成;•熟悉c程序的上机步骤:素质目标•协调能力、团队合作的能力;•接受新知识、自主学习的能力。教学重点本章首先介纶的c语言程序什么是计算机程序,计算机语言,重点介绍了c语言的发展及其特点,最简单O教学难点重点掌握运行C程序的步骤与方法,了解程序设计的任务。教学方法翻转课堂、MOOC教学、项目向导、任务驱动、分组讨论教学过程设计教学环节教学内容教师活动学生活动新课引入人类发明了计算机,同样,人类也使用着计算机改变着自己的生活。如何让计算机为你所用呢?视频动画讲解听讲记录单元描述提出本单元学习的主要目标——与计算机交流和沟通视频动画讲解听讲记录单元介绍任务1提出问题如何与计算机交流?内容引入了解计算机的发展历程,讲解人与计算机之间沟通的方式。视频动画讲解搜集资料、交流任务2相关知识1.2.1计算机语言1.2.2C语言的发展历史内容引入任何人之间的交流需要语言。中国人之间用中国话,英国人用英语、俄罗斯人用俄语,等等。人和计算机交流信息,需要使用计算机语言。讲解C语言的发展历史。视频动画讲解讨论
任务3解决问题让我们来和计算机打招呼吧!1.3.1如何使用C语言1.3.2C语言程序的结构1.3.3运行C语言程序的方法与步骤内容引入C语言是国际上广为流行的计算机高级语言。C语言经历了自身几十年的发展,凭借自身简洁、紧凑、使用方便的特点得到众多编程爱好者的青睐。视频动画讲解听讲记录任务4能力测试内容引入经过以上知识点的学习,同学们是不是都摩拳擦掌,想一试身手呢?现在就请大家完成高手闯关训练吧!。在线测试点评讲解任务5知识拓展1.5.1程序设计的步骤1.5.2大显身手内容引入程序设计的过程是指从接受任务到运行测试、获取结果,直至写出文档的全过程。视頻动画讲解听讲记录本章各章节的具体实施任务1提出问题如何与计算机交流?内容讲述1、 世界上第一台电子数字计算机ENIAC的介绍2、 总结:只有使用计算机语言才能和计算机进行交流,就好比我们用英语和英国人交流一样。视频动画讲解搜集资料、交流视顼播放,拓展思锥任务2相关知识1.2.1计算机语言C语言的发展历史C语言的特点内容讲述1、 计算机语言历经了儿个发展阶段(1) 机器语言(2) 汇编语言(3) 高级语言2、 介绍C语言的发展历史3、 C语言的特点C语言简洁、紧凑,使用方便灵活。运算丰富。数据类型丰富。®c语言是一种结构化程序设计语言。®C语言可以直接访问物理地址⑥C语言提供了预处理机制,有利于大型程序的编写和调试。®C语言生成的目标代码质量很高,程序执行效率很髙。⑧用C语言写的程序可移植性好(与汇编语言比)。®c语言语法限制不太严格,程序员设计自由度较大。视频动画讲解深入讨论细致讲述任务3解决问题让我们来和计算机打招呼吧!1.3.1如何使用C语言1.3.2C语言程序的结构视频动画讲解听讲记录
1.3.3运行C语言程序的方法与步骤内容讲述1、 用最简单的C语言程序与计算机打招呼实例1.1“HelloWorld!”。解題思路:在主函数中,使用printf函数输出如题目所示的文字,向世界问好。源代码:源代码1-1问候程序2、 C语言程庁的结构特点一个程序由一个或多个源程序文件组成。函数是C程序的重要组成部分。一个函数由函数首部和函数体两部分组成。程序总是从main函数开始执行,到main函数执行结束。程序中对计算机的操作是由函数中的C语句完成。在每个数据声明和语句的最后必须加上分号。®C语言本身不提供输入输出语句,仅提供输入输出函数。⑧程序应当包含注释。3、 运行C语言程序的方法与步骤任务4能力测试内容讲述经过以上知识点的学习,同学们是不是都摩拳擦掌,想一试身手呢?现在就请大家来完成高手闯关训练吧!在线测试点评讲解任务5知识拓展1.5.1程序设计的步骤1.5.2大显身手内容讲述讲述程序设计的过程:接受任务、分析任务、寻找规律、核心代码、完善代码、调试运行、编写文档。完成大显身手环节。视频动画讲解听讲记录教学小结学生完成爱课程(中国大学MOOC)《程序设计基础》课程的注册、选课任务,并对应当前章节完成视频、文档的预习,效果较好。讲解记录拓展实践(课外)大显身手:完成MOOC课程上的单元作业和单元测试扩展练习:高手闯关
第一阶段程序设计入门教学章节名称单元2算法一一程序设计的灵魂授课教师授课班级学时4授课日期教学地点教目标能力目标掌握算法的相关概念,以及算法的设计方法,结构化程序设计的方法。知识目标•理解算法的概念和特性;•学会设计算法的方法;•掌握结构化程序设计的方法:素质目标•协调能力、团队合作的能力;•接受新知识、自主学习的能力。教学車点能够根据问题自我设计;按照合理的步骤分析出算法执行流程:会绘制各种流程图,能用伪代码表示算法。教学难点绘制各种流程图,能用伪代码表示算法。教学方法翻转课堂、MOOC教学、项目向导、任务驱动、分组讨论教学过程设计教学环节教学内容教师活动学生活动新课引入如何才能让信息在计算机内部更好地组织存储起来呢?数据结构(DataStructure)可以解决这个问题。又如何让信息在计算机中得到更好的处理和计算呢?算法(Algorithm)就是程序设计的灵魂。那么何为算法呢?视频动画讲解听讲记录单元描述提出本单元学习的主要目标——算法及算法的描述视频动画讲解听讲记录单元介绍任务1提出问题什么是程序?内容引入以瑞士计算机科学家,尼古拉斯•沃斯引入本次课视频动画讲解搜集资料、交流将人文、历史带入课堂任务2相关知识2.2.1算法2.2.2算法的特性2.2.3简单算法举例2.2.4如何表示算法内容引入剖解算法的起源、算法的概念、特点以及如何表示和设计算法。视頻动画讲解讨论弘扬中国历史从思想和意识上打动学生树立民族荣誉感
任务3解决问题让我们来设计算法吧!2.3.1用流程图设计算法2.3.2用N-S盒图设计算法2.3.3用伪代码设计算法内容引入对同一个问题,用流程图、N-S盒图、伪代码来完成算法的设计。视频动画讲解听讲记录任务4能力测试内容引入经过以上知识点的学习,同学们是不是都摩拳擦掌,想一试身手呢?现在就请大家完成高手闯关训练吧!。在线测试点评讲解任务5知识拓展2.5.1结构化程序设计的方法2.5.2大显身手内容引入重点讲述结构化程序设计:自顶向下:逐步细化;模块化设计:结构化编码。视频动画讲解听讲记录本章各章节的具体实施任务1提出问题什么是程序?内容讲述1、算法+数据结构=程序1数据结构:用于描述数据类型以及数据的组织形式。②算法:要求计算机对数据进行加工、处理和操作的步骤。视频动画讲解搜集资料、交流视颁播放,拓展思誰任务2相关知识2.2.1算法2.2.2算法的特性2.2.3简单算法举例2.2.4如何表示算法内容讲述1、 算法的发展历史,中国在算法发展中起到的作用。2、 算法的5个重要的特性3、 简单算法举例实例2.1求1+2+3+ +98+99+10004、 为了表示一个算法,可以用不同的方法。常用的方法有:自然语言、传统流程图、结构化流程图和伪代码等。视频动画讲解深入讨论细致讲述任务3解决问题让我们来设计算法吧!2.3.1用流程图设计算法2.3.2用N-S盒图设计算法2.3.3用伪代码设计算法内容讲述1、 实例2.2将实例2.1用流程图表示。2、 实例2.3将实例2.1用N-S盒图表示。3、 实例2.4将实例2.1用伪代码表示。4、 实例2.5将实例2.1用计算机语言实现。视频动画讲解听讲记录
任务4能力测试内容讲述经过以上知识点的学习,同学们是不是都摩拳擦掌,想一试身手呢?现在就请大家来完成高手闯关训练吧!在线测试点评讲解任务5知识拓展2.5.1结构化程序设计的方法2.5.2大显身手内容讲述重点讲述结构化程序设计:自顶向下;逐步细化;模块化设计;结构化编码。完成大显身手环节的算法设计。视频动画讲解听讲记录教学小结课前学生完成当前章节视频、文档的预习。课中,通过视频、动画形象生动展示程序处理过程,算法设计的过程。课后完成单元作业和单元测试。讲解记录拓展实践(课外)大显身手:完成MOOC课程上的单元作业和单元测试扩展练习:高手闯关项目1身高体型判定系统教学章节名称单元3“身高体型判定系统”数据处理授课教师授课班级学时8授课日期教学地点教学:目标能力目标r解基本数据存错与基本数据操作的方法,细致掌握知识概念:掌握顺序结构程序设计的基本技能。知识目标•掌握Ci吾言常用的基本数据类型:•学会基本运算操作;•能够灵活运用C语言输入输出库函数。素质目标•协调能力、团队合作的能力;•接受新知识、自主学习的能力。教学重点了解基本数据存错与基本数据操作的方法,细致掌握知识概念。教学难点各种数据类型、常量变量、输入输出函数。教学方法翻转课堂、MOOC教学、项目向导、任务驱动、分组讨论教学过程设计教学环节教学内容教师活动学生活动新课引入计算机凭借超越人脑的计算速度改变着现实世界数据处理的进程。那么现实世界中存在的大量简单数据如何在程序中存储和表示呢?视频动画讲解听讲记录单元描述提出本单元学习的主要目标一学会最简单的数据处理视频动画讲解听讲记录单元介绍任务1项目需求如何预测身高、判定体型?内容引入请问,你的身材属于那种类型呢?需要营养师给你搭配何种饮食?又如何让计算机来帮助您获取答案呢?视频动画讲解搜集资料、交流将人文、历史带入课堂任务2相关知识3.2.1如何描述数据3.2.2如何操作数据3.2.3输入输出内容引入从项目需求分析可以得知,解决问题的关键是数据处理,而数据处理的前提,就是数据存储问题。那么如何将公式中提到的整数、小数有效地存储起来,然后再完成数据处理呢?C语言又是如何实现的呢?视频动画讲解讨论弘扬中国历史从思想和意识上打动学生树立民族荣誉感
任务3解决问题让我们来完成计算任务吧!3.3.1如何求一元二次方程的根3.3.2求摄氏温度3.3.3计算存款利息内容引入对同一个问题,用流程图、N-S盒图、伪代码来完成算法的设计。视频动画讲解听讲记录任务4能力测试内容引入经过以上知识点的学习,同学们是不是都摩拳擦掌,想一试身手呢?现在就请大家完成高手闯关训练吧!。在线测试点评讲解任务5项目实施3.5.1大显身手C1)身高预测系统<2)体型判定系统内容引入重点讲述结构化程序设计:自顶向下;逐步细化;模块化设计;结构化编码。视频动画讲解听讲记录本章各章节的具体实施任务1项目需求如何预测身高、判定体型?内容讲述1、算法+数据结构=程序F数据结构:用于描述数据类型以及数据的组织形式。②算法:要求计算机对数据进行加工、处理和操作的步骤。视頻动画讲解搜案资料、交流视频播放,拓展思维任务2相关知识3.2.1如何描述数据3.2.2如何操作数据3.2.3输入输出内容讲述1、 算法的发展历史,中国在算法发展中起到的作用。2、 算法的5个重要的特性3、 简单算法举例实例2.1求1+2+3+ +98+99+10004、 为了表示一个算法,可以用不同的方法。常用的方法有:自然语言、传统流程图、结构化流程图和伪代码等。视频动画讲解深入讨论细致讲述任务3解决问题让我们来完成计算任务吧!3.3.1如何求一元二次方程的根3.3.2求摄氏温度3.3.3计算存款利息内容讲述1、 实例2.2将实例2.1用流程图表示。2、 实例2.3将实例2.1用N-S盒图表示。3、 实例2.4将实例2.1用伪代码表示。4、 实例2.5将实例2.1用计算机语言实现。视频动画讲解听讲记录任务4能力测试在线点评讲解
内容讲述经过以上知识点的学习,同学们是不是都摩拳擦掌,想-试身手呢?现在就请大家来完成高手闯关训练吧!测试任务5项目实施3.5.1大显身手(1) 身高预测系统(2) 体型判定系统内容讲述己知父母身高,如何预测孩子的身高呢?从身高预测公式:(1) 男孩身高(厘米)=(父亲身高+母亲身高)XI.08/2(2) 女孩身高(厘米)=(父亲身高+0.923X母亲身高)/2如果知道体車和身高,就可以通过公式就出,体质指数(BMI),公式如下:(1)体质指数(BMI)=体重(kg)4■(身髙(m)X身高(m))视频动画讲解听讲记录敎学小结课前学生完成当前章节视频、文档的预习。课中,通过视频、动画形象生动展示数据存储以及项目设计、实现的过程。课后完成单元作业和单元测试。讲解记录拓展实践大显身手:完成MOOC课程上的单元作业和单元测试(课外)扩展练习:高手闯关项目1身高体型判定系统教学章节名称单元4“身高体型判定系统"决策判断授课教师授课班级学时8授课日期教学地点教学目标能力目标掌握if语句和switch语句,掌握关系运算、条件运算与逻辑运算的计算方法和技能。掌握选择结构程序设计的基本技能。知识目标•掌握关系运算符、逻辑运算符和条件运算符的运算规则;•掌握if语句的3种基本形式,了解if语句的嵌套方法;•掌握switch语句的使用方法;•掌握选择结构程序设计的方法。素质目标•协调能力、团队合作的能力;•接受新知识、自主学习的能力。教学重点掌握if语句和switch语句。教学难点掌握关系运算、条件运算与逻辑运算的计算方法和技能。教学方法翻转课堂、MOOC教学、项目向导、任务驱动、分组讨论教学过程设计教学环节教学内容教师活动学生活动新课引入在现实生活中也存在很多选择的情况。比如:从无锡到北京旅游,是选择火车好呢,还是选择飞机出行呢?中国电视节目著名主持人杨澜告诉我们:决定你是什么的,不是你拥有的能力,而是你的选择。让我们共同开启本单元的选择之旅吧!视频动画讲解听讲记录单元描述提出本单元学习的主要目标——选择结构程序设计视频动画讲解听讲记录单元介绍任务1项目需求“身高体型判定系统”的改进需求内容引入目前,可以通过父母身高预测孩子身高:根据身高、体.重判定体型,给出合理的饮食建议。但是原本应该是一个完整的系统,却被硬生生地拆分成了两个,如何将两个功能合并,变为一个完整的系统呢?视频动画讲解搜集资料、交流将人文、历史带入课堂
任务2相关知识4.2.1if语句的一般形式4.2.2关系运算符与关系表达式4.2.3逻辑运算符与逻辑表达式4.2.4条件运算符与条件表达式4.2.5if语句的嵌套4.2.6用switch语句实现多分支选择结构内容引入从项目需求分析可以得知,解决何题的关键是选择,人生充满选择,在程序世界里,也有选择。欧洲早期空想社会主义学说的创始人,才华横溢的人文主义学者托马斯•莫尔说过:人生中最困难者,莫过于选择。那么计算机如何实现选择呢?C语言又是如何展现现实世界人类的选择呢?视频动画讲解讨论弘扬中国历史从思想和意识上打动学生树立民族荣誉感任务3解决问题交换如此有趣!4.3.1两个数的交换4.3.2三个数的交换4.3.3闰年的判断4.3.4再次求一元二次方程的根4.3.5我们的运输费用内容引入以交换如此有趣为标题,从两两交换、三个数交换开始,展开选择程序设计的应用举例教学。视频动画讲解听讲记录任务4能力测试内容引入经过以上知识点的学习,同学们是不是都摩拳擦掌,想一试身手呢?现在就请大家完成高手闯关训练吧!。在线测试点评讲解任务5项目实施4.5.1大显身手“身高体型判定系统”改进版内容引入经过一个单元的学习,我们进入了本单元的最后一个阶段:项目实施。同学们有没有做好准备呢?让我们一起完成进步提高吧!经过第三单元的学习,我们完成了两个系统,分别是:“身高预测系统”和“体型判定系统”。第四单元的项目实施,需要将两个系统合并为一个完整的系统,如果用户选择身高预测,则本系统帮助用户预测身高,如果用户选择了体型判定,则系统将完成用户体型的判定。视频动画讲解听讲记录本章各章节的具体实任务1项目需求“身高体型判定系统”的改进需求内容讲述目前,可以通过父母身高预测孩子身高:根据身高、体重判定体型,给出合理的饮食建议。但是原本应该是一个完整的系统,却被硬生生地拆分成了两个,如何将两个功能合并,变为一个完整的系统呢?根据用户的选择,判定具体要执行哪个系统,从而将两个项目合二为一。视频动画讲解搜集资料、交流视颁播放,拓展思维任务2相关知识4.2.1if语句的一般形式4.2.2关系运算符与关系表达式4.2.3逻辑运算符与逻辑表达式视频动画讲解深入讨论细致讲述
施4.2.4条件运算符与条件表达式4.2.5if语句的嵌套4.2.6用switch语句实现多分支选择结构内容讲述1、 if语句的3种形式。2、 关系运算符以及优先顺序3、 何为关系表达式4、 逻辑运算符和逻辑表达式5、 逻辑运算符的优先顺序6、 逻辑表达式举例,短路现象7、 条件运算符和条件表达式,条件运算符的结合方向和优先级别8、 if语句的嵌套方式9、 switch语句的使用实例4.1给岀一百分制成绩,要求输出成绩等级'A'、'B'、'C'、'D'、'E',其中,90分以上为'A',80〜89为'B',70〜79为'C*、60〜69为'D'、60分以下'E'。任务3解决问题交换如此有趣!4.3.1两个数的交换4.3.2三个数的交换4.3.3闰年的判断4.3.4再次求一元二次方程的根4.3.5我们的运输费用内容讲述1、 实例4.2输入两个整数a和b,使a中存放两者最小值,b中存放两者最大值,并输出a和b。2、 实例4.3输入三个整数a、b和c,使a中存放三个数的最小值,b中存放三个数的中间值,c中存放三个数的最大值,并输出a、b和c。3、 实例4.4输入年份,判断该年是否为闰年。4、 实例4.5求一元二次方程ax4bx+c=0方程的根。5、 实例4.6企业发放的奖金根据利润提成计算。利润(I)越髙,提成自然越高。视频动画讲解听讲记录任务4能力测试内容讲述经过以上知识点的学习,同学们是不是都摩拳擦掌,想一试身手呢?现在就请大家来完成高手闯关训练吧!在线测试点评讲解任务5项目实施4.5.1大显身手“身高体型判定系统”改进版内容讲述经过一个单元的学习,我们进入了本单元的最后一个阶段:项目实施。同学们有没有做好准备呢?让我们一起完成进步提高吧!经过第三单元的学习,我们完成了两个系统,分别是:“身高预测系统”和“体型判定系统”。第四单元的项目实施,需要将两个系统合并为一个完整的系统,如果用户选择身高预测,则本系统帮助用户预测身高,如果用户选择了体视频动画讲解听讲记录
型判定,则系统将完成用户体型的判定。敎学小结课前学生完成当前章节视频、文档的预习。课中,通过视频、动画形象生动展示选择结构以及项目设计、实现的过程。课后完成单元作业和单元测试。讲解记录拓展实践(课外)大显身手:完成MOOC课程上的单元作业和单元测试扩展练习:高手闯关项目1身高体型判定系统教学章节名称单元5“身高体型判定系统"完整版授课教师授课班级学时10授课日期教学地点教学目标能力目标掌握三大循环结构的概念和知识点,理解循环的方法和技术;狭套以及改变循环执行状态的知识目标•掌握while、do—whilesfor循环结构;•学会使用break和continue语句;•掌握循环的嵌套使用:•掌握循环结构程序设计的方法。素质目标•提高分析问题、解决问题、探究问题的学习能力;•提高创新意识和团队协作意识。教学重点掌握while语句、do-while^for语句。教学难点理解循环的嵌套以及改变循环执行状态的方法和技术。教学方法翻转课堂、M00C教学、项目向导、任务驱动、分组讨论教学过程设计教学环节教学内容教师活动学生活动新课引入马克思告诉我们:事物的发展呈现螺旋式上升或波浪式前进。螺旋式上升的就是计算机程序设计的循环结构。生活中,我们循环着每天的口常生活,但又感受着不经意间科技的进步,时代的变革,人类的发展。没有变化的循环好比一潭死水,臺无生机,“螺旋式上升”就直接体现到了循环结构中“变”的重要性。在程序设计世界里,循环结构担当着巨大使命,它和顺序结构、选择结构一起,经过千变万化的组合,共同演绎曼妙绚丽的程序世界。本单元我们要一展循环结构的风采,实现“身高体型判定系统”项目的全部设计,让我们一同开启本单元的学习之旅吧!视频动画讲解听讲记录单元描述提出本单元学习的主要目标——循环结构程序设计视频动画讲解听讲记录单元介绍任务1项目需求“身高体型判定系统”的再次改进需求内容引入目前,用户在进入“身高体型判定系统”后,不能反复选择,仅能在两个功能中选择一个使用。一旦使用完毕,该系统就退岀了。如何进行反复选择,多次使用呢?视频动画讲解搜集资料、交流将人文、历史带入课堂
任务2相关知识5.2.1用while语句实现循环5.2.2用do・・・whilc语句实现循环5.2.3用for语句实现循环5.2.4循环的嵌套5.2.5几种循环的比较5.2.6改变循环的执行状态内容引入大多数应用程序都会包含循环结构。顺序结构、选择结构、循环结构是结构化程序设计的3种基本结构,任何算法都可以由这三种基本结构组合而成。因此熟练掌握选择结构、循环结构的概念和使用方法是进行程序设计的最基本的要求。视频动画讲解讨论弘扬中国历史从思想和意识上打动学生树立民族荣誉感任务3解决问题交换如此有趣!5.3.1初谈斐波那契数列(Fibonacci)5.3.2素数问题5.3.3!!的近似值5.3.4数字游戏(1)5.3.5打印图形内容引入解决问题环节将通过斐波那契数列、素数问题,圆周率的计算,数字游戏和图形打印讲解循环的应用。视频动画讲解听讲记录任务4能力测试内容引入经过以上知识点的学习,同学们是不是都摩拳擦掌,想一试身手呢?现在就请大家完成高手闯关训练吧!。在线测试点评讲解任务5项目实施5.5.1大显身手“身高体型判定系统”的完美版内容引入在第四单元的项目实施环节,已经将两个系统合并为•个完整的系统,缺点是无论用户如何选择,每次仅能完成一个功能,可否允许用户反复多次使用该系统呢?这时要借助」•循环来实现。让我们来看-下整个项冃的流程图吧!视频动画讲解听讲记录本章各章节的具体实施任务1项目需求“身高体型判定系统”的再次改进需求内容讲述目前,用户在进入“身高体型判定系统”后,根据自己的需要进行选择,用户选择哪个功能,系统则执行哪个功能(“身高体型判定系统”现有版本运行效果如图5-1所示)。但是,用户不能反复选择,仅能在两个功能中选择一个使用。一旦使用完毕,该系统就退出了。可否允许用户反复选择并使用,直到用户选择了“退出”功能,才顺利退出本系统呢?反复选择,多次使用,这就涉及到循环程序设计的知识了。接下来,就让我们一同带着项目需求,探究循环结构的奥秘吧!视頻动画讲解搜棄资料、交流视颁播放,拓展思维任务2相关知识5.2.1用while语句实现循环5.2.2用do-while语句实现循环5.2.3用for语句实现循环视频动画讲解深入讨论细致讲述
5.2.4循环的嵌套5.2.5几种循环的比较5.2.6改变循环的执行状态内容讲述1、 while语句的一般格式2、 while语句的执行过程3、 while语句流程图实例5.1再求1+2+3+ +98+99+100。4、 do-while语句的一般格式5、 do—while语句的执行过程实例5.2改进求解1+2+3+……+98+99+100。6、 for语句的一般格式7、 for语句的执行过程实例5.3再次改进求解1+2+3+……+98+99+100。8、 三种循环的嵌套方法9、 3种循环均可以用来处理同一问题,一般情况下它们可以相互替换。10、 break语句11、 continue语句任务3解决问题交换如此有趣!5.3.1初谈斐波那契数列(Fibonacci)5.3.2素数问题5.3.3!1的近似值5.3.4数字游戏(1)5.3.5打印图形内容讲述1、 实例5.4求斐波那契(Fobonacci)数列的前40个数。这个数列有如下特点:第1、2个数均为1,从第3个数开始,每个数均是前两个数之和。你可以打印出斐波那契数列的前40个数吗?2、 实例5.5求1到100以内的全部素数。3、 实例5.6用公却=1=+。丄+丄-丄+..・求.的近« 3S'似值,直到发现某一项的绝对值小于IO*为止。4、 实例5.7输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身。例如153是一个水仙花数,因为153=13+53+3\5、 实例5.6输出以下图形。♦************♦♦♦********♦视频动画讲解听讲记录
任务4能力测试内容讲述经过以上知识点的学习,同学们是不是都摩拳擦掌,想一试身手呢?现在就请大家来完成高手闯关训练吧!在线测试点评讲解任务5项目实施5.5.1大显身手“身高体型判定系统”的完美版内容讲述同学们.你们淮备好了吗?让我们快快行动起来吧!在第四单元的项目实施环节,巳经将两个系统合并⑦个完整的系统,缺点是无论用户如何选择,每次仅能完川个功能,可否允许用户反复多次使用该系统呢?这时要作于循环来实现。让我们来看一下整个项目的流程图吧!定义变量s,lecl、些>*••助视频动画讲解听讲记录! 卫一输出系统功能信息用户选择:1身漏;2体/^r —— 1、体型判定功能 1身高预测功能/体型判定结/ /身髙预测结/1 ](结束)图5-7■身高体型判定系统”完美版教学小结课前学生完成当前章节视频、文档的预习。课中,通过视频、动画形象生动展示循环结构以及项目设计、实现的过程。课后完成单元作业和单元测试。讲解记录拓展实践(课外)大显身手:完成MOOC课程上的单元作业和单元测试扩展练习:高手闯关
项目2身高体型判定系统教学章节名称单元6“考试系统”数据存储授课教师授课班级学时10授课日期教学地点教,;':目标能力目标掌握一维数组、二维数组、字符数据的基本概念和相关知识;知识目标•掌握数组的定义、初始化及引用方法;•理解基本的排序算法;•理解字符型数组及字符串的处理方法。素质目标•提高分析问题、解决问题、探究问题的学习能力:•提高创新意识和团队协作意识。教学車点掌握巧用一维数组、二维数组、字符串数组操作处理数据的基本技能和高级技能。教学难点使用数组处理同种类型、批量数据的存储问题。教学方法翻转课堂、MOOC教学、项目向导、任务驱动、分组讨论教学过程设计教学环节教学内容教师活动学生活动新课引入实际生活中,存在很多复杂的、特殊的问题,例如学生的学籍、档案、成绩管理,教职工的档案管理等,仅靠基本数据类型来处理这些问题是非常麻烦的。C语言除了提供基本类型的数据之外,还提供了派生数据类型,它们包括数组类型、结构体类型等。本单元我们将一起走进数组,来一起领略一下批量数据的存储问题。视频动画讲解听讲记录单元描述提出本单元学习的主要目标一数组的定义和使用视频动画讲解听讲记录单元介绍任务1项目需求“考试系统”——数据存储问题内容引入在前面各单元中,我们所使用的变量均属于基本数据类型,例如整型、字符型、浮点型数据。因此,只能处理一些简单问题。但在实际生活中,存在很多复杂的、特殊的问题,例如学生的学籍、档案、成绩管理,教职工的档案管理等,仅靠基本数据类型来处理这些问题是非常麻烦的。C语言除了提供基本类型的数据之外,还提供了派生数据类型,它们包括数组类型、结构体类型等。本单元我们将一起走进数组,来一起领略一下批量数据的存储问题。视频动画讲解搜集资料、交流将人文、历史带入课堂
任务2相关知识6.2.1一雄数组6.2.2二维数组6.2.3字符数组内容引入数组是具有相同数据类型的一组有序数据的集合。数组中各数据的排列有一定的规律。下标代表数据在数组中的序号。可以用数组名和下标来唯一确定数组中的元素,数组中的每个元素都属于同一个数据类型,不同数据类型的数据不能放到同一个数组中。视頻动画讲解讨论弘扬中国历史从思想和意识上打动学生树立民族荣誉感任务3解决问题巧用数组6.3.1巧用一维数组6.3.2巧用二维数组6.3.3字符串处理内容引入解决问题环节将通过斐波那契数列、冒泡排序、矩阵问题、成绩单问题、字符串处理等问题的求解,熟练掌握数组的使用方法和技巧。视频动画讲解听讲记录任务4能力测试内容引入经过以上知识点的学习,同学们是不是都摩拳擦掌,想一试身手呢?现在就请大家完成高手闯关训练吧!。在线测试点评讲解任务5项目实施6.5.1大显身手考试系统(VI版)内容引入同学们,你们准备好了吗?让我们快快行动起来吧!又到了我们的项目实施环节了,同学们,让我们快快将试题、选项和答案都存储到字符数组中吧,实现顺次展示后,就能开始答题了。同学们不要忘记,判断答案是否正确,只需要进行字符串匹配即可哦!做好了,还可以设计精美的考试系统界面。有兴趣的同学快来试试吧!视频动画讲解听讲记录本章各章节的具体实施任务1项目需求“考试系统”一数据存储问题内容讲述本单元,我们要开启一个崭新的项目一一考试系统,’‘考试系统”答题界面运行效果如图6-1所示。“考试系统"的功能包括:考生登录;随机出题;考生答题;机器判分。考试系统中最主要的数据就是考试题目。想要完成该项目,首先要解决的是如何存储备选题目的问题,然后才是如何完成随机选题的功能,即如何在原本录入的试题库中随机选取20道题组成一份试题,让学生做答。因此,整个项目中最重要的问题就是数据存储问题。那么如何进行存储大量的练习题?答案乂如何存放呢?仔细分析考试系统后不难发现,每道选择题,均包含题目、选项和答案,其具有相同视频动画讲解搜集资料、交流视频播放,拓展思锥
的数据类型。因此,首先想到的就是如何处理批量同种类型数据的存储问题,然而数组能有效解决批量数据的存储问题。接下来,让我们一起进入“考试系统”吧!任务2相关知识6.2.1一维数组6.2.2二维数组6.2.3字符数组内容讲述1、 一维数组的定义格式2、 一维数组的初始化3、 引用该数组中的任何元素实例6.1数组元素的引用例子4、 定义二维数组的格式5、 二维数组的初始化6、 引用该数组中的任何元素实例6.2二维数组元索的引用例子。7、 多维数组的定义和使用8、 字符数组的定义9、 字符数组的初始化10、 字符串11、 字符串结束标识符12、 字符串数组的输入输出实例6.3将字符数组中字符逐个输入和输出。实例6.4字符数组中字符串(整串)的输入和输出13、 导入字符串输入输出函数库14、 字符串输入函数gets()15、 字符串输出函数puts()实例6.5字符串输入、输出函数应用案例16、 导入字符串处理函数库17、 求字符串长度函数strlen()实例6.6求字符串长度18、 字符串连接函数strcat()实例6.7字符串连接。19、 字符串复制函数strcpy()实例6.8字符串复制的例子20、 字符串比较函数strcmp()实例6.9将两个字符串进行比较,输出大串及字符串比较函数的返回值。视频动画讲解深入讨论细致讲述任务3解决问题巧用数组6.3.1巧用一维数组6.3.2巧用二维数组6.3.3字符串处理内容讲述1、再谈斐波那契数列实例6.10求斐波那契(Fobonacci)数列的前40个数。这个数列有如下特点:第1、2个数均为1,从第3个数开始,视频动画讲解听讲记录
每个数均是前两个数之和。问该数列的前40个数各是多少?2、 冒泡排序实例6.11釆用“冒泡法”对任意输入的10个整数按由小到大的顺序排序。3、 矩阵问题实例6.12分别计算矩阵a的两条对角线上的元素之和。4、 我们的成绩单实例6.135个学生参加5门课程的期末考试,分数如下所示:doubles[5][5]={{78,82,93,74,65},(91,82,72,76,67},{100,90,85,72,98),(67,89,90,65,78},(77,88,99,45,89}};要求:求出每个学生的平均分。求出每门课程的总分。求出每门课程的最高分,以及该分数是哪个学生取得的成绩,打印出该学生的学号。5、 求字符串的长度实例6.14求出"IamZhaoYan.Whatisyourname?"字符串的长度。6、 字符串连接实例6.15将字符串1:"IamZhaoYan.Whatisyourname?"和字符串2-MynameisChenChen."连接起来。任务4能力测试内容讲述经过以上知识点的学习,同学们是不是都摩拳擦掌,想一试身手呢?现在就请大家来完成高手闯关训练吧!在线测试点评讲解任务5项目实施6.5.1大显身手考试系统(VI版)内容讲述同学们,你们准备好了吗?让我们快快行动起来吧!又到了我们的项目实施环节了,同学们,让我们快快将试题、选项和答案都存储到字符数组中吧,实现顺次展示后,就能开始答题了。同学们不要忘记,判断答案是否正确,只需要进行字符串匹配即可哦!做好了,还可以设计精美的考试系统界面。有兴趣的同学快来试试吧!视频动画讲解听讲记录教学小结课前学生完成当前章节视频、文档的预习。课中,通过视频、动画形象生动展示一维数组、二维数组以及项目设计、实现的过程。课后完成单元作业和单元测试。讲解记录拓展实践(课外)大显身手:完成MOOC课程上的单元作业和单元测试扩展练习:高手闯关
项目2身高体型判定系统教学章节名称单元7“考试系统”的模块化设计授课教师授课班级学时10授课日期教学地点教学||标能力目标掌握函数定义、声明、调用的方法,理解递归算法,了解变量的存储方式和生存期;知识目标•掌握函数的定义格式:•函数调用的方法;•掌握函数参数的传递方式;•掌握变量的作用域及其存储类型。素质目标•提高分析问题、解决问题、探究问题的学习能力;•提高创新意识和团队协作意识。教学重点掌握模块化程序设计的方法,能够灵活运用递归算法解决实际问题:教学难点模块化程序设计、递归算法求解实际问题的思路。教学方法翻转课堂、MOOC教学、项目向导、任务驱动、分组讨论教学过程设计教学环节教学内容教师活动学生活动新课引入结构化程序设计的灵魂在于模块化设计,而函数是模块化设计的助推剂。编程时,将具体、单一的功能写入函数内,实现高内聚、低耦合的特点,达到模块化程序设计的效果。本单元将深入探讨函数,借助函数的魔法改进考试系统,主要介绍函数的定义格式、函数的调用方法、函数的参数传递方式、变量的作用域及其存储类型等。接下来让我们一•起揭开函数的而纱,共同拥有函数的魔法吧!视频动画讲解听讲记录单元描述提出本单元学习的主要目标——函数的定义和使用视频动画讲解听讲记录单元介绍任务1项目需求“考试系统”的模块化设计内容引入在“考试系统”中,最重要的当然是学生考试环节。但整个考试系统分为:用户登录、用户注册、考生答题、机器判分、结果展示部分。每个部分均有自身的功能。将所有功能分均写入主函数(main函数),将増加主函数的负载,不利于代码的可重用性和可移植性。如何提高代码的可移植性和可重用性昵?函数将带领我们解决该问题。视频动画讲解搜集资料、交流将人文、历史带入课堂
任务2相关知识7.2.1怎样定义函数7.2.2怎样调用函数7.2.3函数的额声明与函数原型7.2.4函数的嵌套调用7.2.5函数的递归调用7.2.6数组作为函数参数7.2.7局部变量和全局变量7.2.8变量的存储方式和生存期7.2.9变量的声明与定义7.2.10内部函数与外部函数内容引入在设计一个较大的程序时,往往把它分为若干个程序模块,每一个模块包括一个或多个函数。每个函数实现一个特定的功能。一个C程序可由一个主函数和若干个其他函数组成。主函数调用其他函数,而其他函数之间可以相互调用。同一个函数可以被一个或多个函数调用任意多次。视頻动画讲解讨论弘扬中国历史从思想和意识上打动学生树立民族荣誉感任务3解决问题模块化程序设计7.3.1改写我的成绩单7.3.2三谈斐波那契数列7.3.3深入探讨杨辉三角形7.3.4汉诺塔问题内容引入解决问题环节将通过成绩单问题、斐波那契数列问题、杨辉三角形问题、汉诺塔问题的求解,熟练掌握函数的定义的方和使用的技巧。视频动画讲解听讲记录任务4能力测试内容引入经过以上知识点的学习,同学们是不是都摩拳擦掌,想一试身手呢?现在就请大家完成高手闯关训练吧!。在线测试点评讲解任务5项目实施7.5.1大显身手考试系统(V2版)内容引入同学们,你们准备好了吗?让我们快快行动起来吧!又到了我们的项目实施环节了,同学们,用户登录、用户注册、考生答题、机器判分、结果展示的功能,均放入main函数自然会增加main函数的负载,不利于代码的可移植性和可重用性,更不利于项目的开发和维护。让我们一起动起手来吧,利用函数的概念将各个模块进行拆分组装,将用户登录、用户注册、考生答题、机器判分、结果展示的功能分别放入具体的函数内,通过全局变量、数组传参等各种实现方式,来解决数据传递问题。再加上精美的界面,让更多的用户喜欢上你的软件,相信你的项目一定会获得用户的认可。有兴趣的同学快来试试吧!视频动画讲解听讲记录本章各任务1项目需求“考试系统”的模块化设计内容讲述在“考试系统”中,最重要的当然是学生考试环节。但整个考试系统分为:用户登录、用户注册、考生答题、机器视頻动画讲解搜案资料、交流视频播放,拓展思维
«节的具体实施判分、结果展示部分。每个部分均有自身的功能。“考试系统”各环节运行效果如图7-1所示。将所有功能分均写入主函数(main函数),将增加主函数的负载,不利于代码的可重用性和可移植性。例如,如果当前用户不是系统已经注册的用户,则需要先注册再登录,因此反复使用的功能:登录、注册、考试,将成为反复出现的具有单一功能的代码。此时,如何提高代码的可移植性和可重用性呢?函数将带领我们解决该问题。任务2相关知识7.2.1怎样定义函数7.2.2怎样调用函数7.2.3函数的额声明与函数原型7.2.4函数的嵌套调用7.2.5函数的递归调用7.2.6数组作为函数参数7.2.7局部变量和全局变量7.2.8变量的存储方式和生存期7.2.9变量的声明与定义7.2.10内部函数与外部函数内容讲述1、 为什么要定义函数2、 如何定义函数3、 定义无参函数4、 定义有参函数5、 定义空函数6、 函数调用的一般形式7、 函数调用时数据的传递实例7.1输入两个整数,利用函数,求得两个数中的最大值。8、 函数的调用过程9、 函数的返回值10、 函数的声明与函数的原型实例7.2输入三个整数,利用函数,求得三个数中的最大值。11、 函数的嵌套调用实例7.3输入四个整数,利用函数,求得四个数中的最大值。12、 递归的概念13、 递归的条件14、 何时使用递归15、 从简单案例理解递归实例7.4递归求解n!。16、 数组元素作为函数实参17、 数组名作为函数参数实例7.5用选择法对数组中10个整数按从小到大排序。18、 多维数组名作为函数参数实例7.6求4X4的整型矩阵中,所有元素的最大值。视频动画讲解深入讨论细致讲述
19、 局部变量20、 全局变量实例7.7全局变量与局部变量。21、 静态存储22、 动态存储23、 局部变量的存储类别自动存储(auto)静态存储(static)寄存器存储(register)外部存储(extern)实例7.8静态局部变量的例子。实例7.9使用寄存器变量存储数据。24、 静态存储的全局变量实例7.10在多个文件中声明外部变量。实例7.11在同一个文件中声明外部变量。25、 变量的声明与定义26、 内部函数与外部函数任务3解决问题模块化程序设计7.3.1改写我的成绩单7.3.2递归内容讲述1、 改写我们的成绩单实例7.12改写我们的成绩单。5个学生参加5门课程的期末考试,分数如下所示:doubles[5][5]={{78,82,93,74,65},{91,82,72,76,67},{100,90,85,72,98},{67.89.90.65,78},{77,88,99,45,89}};求解要求:求出每个学生的平均分。求岀每门课程的总分。求出每门课程的最髙分,以及该分数是哪个学生取得的成绩,打印出该学生的学号。提示:打印成绩单的函数名为:displaysheet;求每个学生的平均分的函数名为:studentAVG;求每门课程总分的函数名为:courseSUM:求每门课程的最高分以及该分数对应的学生的学号的函数名为:courseMaxScore;注意各个函数参数的类型,以及函数的返回值的类型。2、 三谈斐波那契数列实例7.13求斐波那契(Fobonacci)数列的前40个数。这个数列有如下特点:第1、2个数均为1,从第3个数开始,每个数均是前两个数之和。问该数列的前40个数各是多少?视頻动画讲解听讲记录
3、 深入探讨杨辉三角形实例7.14打印杨辉三角形。4、 汉诺塔问题实例7.15汉诺塔问题。据传古代印度布拉玛庙里僧侣们玩一种称为汉诺塔的游戏,据说游戏结束就标志着世界末日的到来。游戏的装置是一块铜板,上而有三根杆,最左杆自下而上、由大到小願序串有64个金盘,呈一个塔形(如图7-8)0游戏要求把左边杆上的金盘全部移到最右边的杆上,条件是一次只能够动一个盘,并且不允许大盘在小盘上面。容易推出,n个盘从一根杆移到另一根杆需要2nT次,所以64个盘的移动次数为:2M-1=18,446,744,073,709,511,615,这是一个天文数字,即使一台功能很强的现代计算机来解汉诺塔问题,每一微秒可能计算(不印出)一次移动,那么也需要凡乎100万年。而如果每秒移动一次,则需近5800亿年。任务4能力测试内容讲述经过以上知识点的学习,同学们是不是都摩拳擦掌,想一试身手呢?现在就请大家来完成高手闯关训练吧!在线测试点评讲解任务5项目实施7.5.1大显身手考试系统(V2版)内容讲述同学们,你们准备好了吗?让我们快快行动起来吧!又到了我们的项目实施环节了,同学们,用户登录、用户注册、考生答题、机器判分、结果展示的功能,均放入main函数自然会增加main函数的负裁,不利于代码的可移植性和可重用性,更不利于项目的开发和维护。让我们一起动起手来吧,利用函数的概念将各个模块进行拆分组装,将用户登录、用户注册、考生答题、机器判分、结果展示的功能分别放入具体的函数内,通过全局变量、数组传参等各种实现方式,来解决数据传递问题。再加上精美的界面,让更多的用户喜欢上你的软件,相信你的项目一定会获得用户的认可。有兴趣的同学快来试试吧!视频动画讲解听讲记录教学小结课前学生完成当前章节视频、文档的预习。课中,通过视频、动画形象生动展示函数的定义、传参的过程,解决问题环节为项目设计、实现提供了更多思路,深入学习了使用函数求解实际问题的方法。课后完成单元作业和单元测试。讲解记录拓展实践(课外)大显身手:完成MOOC课程上的单元作业和单元测试扩展练习:高手闯关
项目2身高体型判定系统教学章节名称单元8“考试系统”的优化授课教师授课班级学时10授课口期教学地点教学目标能力目标掌握指针的概念,能够活学活用指针处理数组、字符串、函数指针等具体的指针的使用方法。知识目标•掌握指针的概念和使用方法:•掌握指针与字符串、指针与函数的概念及使用技巧:•学会使用指针解决实际问题。素质目标•提高分析问题、解决问题、探究问题的学习能力;•提高创新意识和团队协作意识。教学重点掌握指针与函数、指针与数组、指针与字符串的应用技巧,并实现指针在项目开发中的高级应用。教学难点指针数组、数组指针,函数指针,实现指针在项目开发中的高级应用。教学方法翻转课堂、MOOC教学、项目向导、任务驱动、分组讨论教学过程设计教学环节教学内容教师活动学生活动新课引入指针是C语言的一个重要概念。它允许高级语言程序直接访问内存地址,能构造更富有灵活性的数据结构,因此,指针是C语言的“重要特色”。也正因为如此,指针为C语言学习者带来许许多多的困难,成为初学者难以逾越的高山。让我们携手走进本单元,一起翻越指针这座高山吧!视频动画讲解听讲记录单元描述提出本单元学习的主要目标——指针的定义和使用视频动画讲解听讲记录单元介绍任务1项目需求“考试系统”的优化内容引入系统设计的过程中,最重要的就是要提髙执行效率。指针可以直接访问系统内存,有效提高数据存取的效率,节约成本,提高运行速度。本单元将使用指针的概念对“考试系统”进行优化,提高程序运行效率。那么如何使用指针呢?如何定义指针变量呢?如何让指针作为用户登录、用户注册、考生答题、机器判分、结果展示各功能函数的参数呢?接下来,我们就带着问题出发,掲开指针的神奇面纱,让指针为你所用,优化“考试系统”。视频动画讲解搜集资料、交流将人文、历史带入课堂
任务2相关知识8.2.1指针变量8.2.2通过指针引用数组8.2.3通过指针引用字符串8.2.4指向函数的指针8.2.5返回指针值的函数8.2.6指针数组和多重指针8.2.7动态内存分配与指向它的指针变量内容引入在C语言中,程序一经编译,在其执行过程中,就会为变量、数组以及函数分配存储空间。比如int数据占4个字节,char数据占1个字节。这些变量、数组、函数都称为程序实体,具有某一种数据类型。这些被分配了内存空间的程序实体,都具有自己的内存地址。视频动画讲解讨论弘扬中国历史从思想和意识上打动学生树立民族荣誉感任务3解决问题指针的妙用8.3.110个数8.3.2使用指针对20个数的相关操作8.3.3用指针实现字符串的相关操作内容引入解决问题环节将通过10个数、使用指针对20个数的相关操作、指针实现字符串的相关操作的求解过程,熟练掌握指针的概念,指针变量的定义的方法和使用的技巧。视频动画讲解听讲记录任务4能力测试内容引入经过以上知识点的学习,同学们是不是都摩拳擦掌,想一试身手呢?现在就请大家完成高手闯关训练吧!。在线测试点评讲解任务5项目实施8.5.1大显身手考试系统(V3版)内容引入同学们,你们准备好了吗?让我们快快行动起来吧!又到了我们的项目实施环节了,同学们,目前,用户登录、用户注册、考生答题、机器判分、结果展示的功能,分别放在函数中实现,降低了main函数的负载,提高了代码的可移植性和可重用性,那么接下来,又如何提高代码的实现效率呢?指针给我们提供了较好的代码优化、提高代码执行效率的解决方案。让我们一起动起手来吧,利用指针的概念将各个模块的功能进行优化,将用户登录、用户注册、考生答题、机器判分、结果展示的功能用指针实现。再加上精美的界面,让更多的用户喜欢上你的软件,相信你的项目一定会获得用户的认可。有兴趣的同学快来试试吧!视频动画讲解听讲记录本章各章节任务1项目需求“考试系统”的模块化设计内容讲述系统设计的过程中,最重要的就是要提高执行效率。指针可以直接访问系统内存,有效提高数据存取的效率,节约成本,提高运行速度。本单元将使用指针的概念对“考试系统”进行优化,提高程序运行效率。那么如何使用指视频动画讲解搜集资料、交流视频播放,拓展思维
的具体实施针呢?如何定义指针变量呢?如何让指针作为用户登录、用户注册、考生答题、机器判分、结果展示各功能函数的参数呢?接下来,我们就带着问题出发,揭开指针的神奇面纱,让指针为你所用,优化“考试系统”。任务2相关知识8.2.1指针变量8.2.2通过指针引用数组8.2.3通过指针引用字符串8.2.4指向函数的指针8.2.5返回指针值的函数8.2.6指针数组和多重指针8.2.7动态内存分配与指向它的指针变量内容讲述1、 指针与地址的概念2、 何为指针变量?3、 如何定义指针变量?4、 指针变量的初始化和赋值实例8.1通过指针访问数据。5、 给指针变量賦值6、 引用指针变量指向的变量7、 引用指针变量的值实例8.2输入两个整数a和b,使a中存放两者最小值,b中存放两者最大值,并输出a和b,要求通过指针实现。8、 指针变量作为函数参数实例8.3输入两个整数a和b,使a中存放两者最小值,b中存放两者最大值,并输出a和b,要求用指针作为函数参数实现。9、 数组元素的指针10、 在引用数组元素时指针的运算11、 通过指针引用数组元素实例8.4对于整型数组a,首先为该数组赋值,并願次输出数组中的全部元素。12、 数组名作为函数参数实例8.5用选择法对数组中10个整数按从小到大排序。13、 多维数组元素的地址14、 指向多维数组元素的指针变量实例8.6使用指针变量指向一个3X4的二维数组,要求使用指针变量输出二维数组各元素的值。15、 用指向多维数组的指针作为函数参数实例8.7改写我们的成绩单。5个学生参加5门课程的期末考试,分数如下所示:doubles[5][5]={{78,82,93,74,65},{91,82,72,76,67),{100,90,85,72,98},{67,89,90,65,78),{77,88,99,45,89}};求解要求:①求出每个学生的平均分。视频动画讲解深入讨论细致讲述
求出每门课程的总分。求出每门课程的最高分,以及该分数是哪个学生取得的成绩,打印出该学生的学号。提示:打印成绩单的函数名为:displaySheet;求每个学生的平均分的函数名为:studentAVG;求每门课程总分的函数名为:courseSUM;求每门课程的最高分以及该分数对应的学生的学号的函数名为:courseMaxScore;注意各个函数参数的类型,以及函数的返回值的类型。16、 用字符数组存放字符串17、 用指针变量指向一个字符串常量18、 字符串指针作为函数参数实例8.8求出"IamZhaoYan.Whatisyourname?"字符串的长度。19、 使用字符指针变量和字符数组的比较20、 什么是函数指针21、 用函数指针变量调用函数实例8.9用指向函数的指针变量调用intarrAdd(intarr[],intn)函数,求二维数组中全部元素之和。21、 如何定义和使用指向函数的指针变量22、 指向函数的指针作为函数参数实例8.10定义长度为12的double数组,数组存储数据如下:doublea[]=(1.5,3.8,5.6,7.8,91.6,1.61,13.3,15.0z17.5,19.9,21.7,23.0);编写函数实现下面的功能。求数组全部的元素值之和:求数组元素中的最大值;求下标为奇数的数组元素之和;求各元素的平均值。23、 返回指针值的函数实例8.11编写一个名为str_chr的函数,它的作用是在一个长串中找到指定字符第一次出现的位置,返回该字符的地址。24、 什么是指针数组实例8.12将若干字符串按字母顺序(由小到大)输出。25、 指向指针的指针26、 指针作为main函数的形参27、 动态内存分配28、 怎么建立内存的动态分配实例8.13动态生成数组空间,存储学生成绩,求平均成绩。
29、void指针类型任务3解决问题指针的妙用8.3.110个数8.3.2使用指针对20个数的相关操作8.3.3用指针实现字符串的相关操作内容讲述1、 10个数实例8.14完成下面的程序题目,输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。要求,用指针实现。流程如I':输入10个数;进行数据处理;输出10个数。2、 使用指针按照要求处理20个数实例8.15编写函数实现以下功能:(DgetValue函数实现随机生成的20个数的功能;sortArray函数实现对随机生成的20个数进行升序排序的功能(使用冒泡排序法):printArray函数实现数据打印的功能,按照每行5个数,分四行显示将20个数打印出来;上述三项功能在子函数中实现;书写main函数,首先调用getValue实现数据生成;其次调用printArray实现排序前数据的打印,接着调用sortArray函数实现数据升序排序;最后再次调用printArray实现排序后数据的打印。提示:使用指针实现。3、 使用指针实现字符串的相关操作实例8.16实现str_len、str_cat、str_copy以及main函数,各个函数的功能如下所示:(Dintstr_len(char*str)实现求字符串长度的功能;voidstr_copy(char*from,char*to)实现将from指针指向的字符串赋值到to指针指向的字符数组空间中;voidstrcat(char*from,char*to)实现将from指向的字符串与to指向的字符串连接,并将最终结果存储到t。指向的字符串中;voidmain。主函数中有两个字符串,串A和串B,其定义如下:charA[50]amateacher!char*B="Youareastudent!在main函数中,首先实现字符串连接,连接后的字符串为:“Iamateacher!Youareastudent!M:然后求连接后得到的新字符串(“Iamateacher!Youareastudent!n)的长度。视频动画讲解听讲记录任务4能力测试内容讲述在线点评讲解
经过以上知识点的学习,同学们是不是都摩拳擦掌,想一试身手呢?现在就请大家来完成髙手闯关训练吧!测试任务5项目实施8.5.1大显身手考试系统(V3版)内容讲述同学们,你们准备好了吗?让我们快快行动起来吧!又到了我们的项目实施环节了,同学们,目前,用户登录、用户注册、考生答题、机器判分、结果展示的功能,分别放在函数中实现,降低了main函数的负载,提高了代码的可移植性和可重用性,那么接下来,又如何提高代码的实现效率呢?指针给我们提供了较好的代码优化、提高代码执行效率的解决方案。让我们一起动起手来吧,利用指针的槪念将各个模块的功能进行优化,将用户登录、用户注册、考生答题、机器判分、结果展示的功能用指针实现。再加上精美的界面,让更多的用户喜欢上你的软件,相信你的项目一定会获得用户的认可。有兴趣的同学快来试试吧!视频动画讲解听讲记录教学小结课前学生完成当前章节视频、文档的预习。课中,通过视频、动画形象生动展示指针和地址、指针变量的定义,指针作为参数传参的过程,并深入了解了函数指针、指针与数组、数组指针等概念。解决问题环节为项目设计、实现提供了更多思路,深入学习了使用指针求解实际问题的方法。课后完成单元作业和单元测试。讲解记录拓展实践(课外)大显身手:完成MOOC课程上的单元作业和单元测试扩展练习:高手闯关项目3学生信息管理系统教学章节名称单元9“学生信息管理系统”数据存储授课教师授课班级学时10授课日期教学地点教学:目标能力目标掌握结构体、链表、共用体、枚举类型的概念。知识目标•掌握结构体、结构体变量的定义及结构体变量成员的引用;•学会使用结构体数组;•掌握指针处理链表的方法。素质目标•提高分析问题、解决问题、探究问题的学习能力:•提高创新意识和团队协作意识。教学重点掌握结构体与数组、结构体与指针、结构体与函数之间的使用技能,重点掌握链表的操作。教学难点重点掌握链表的操作。教学方法翻转课堂、MOOC教学、项目向导、任务驱动、分组讨论教学过程设计教学环节教学内容教师活动学生活动新课引入整型、实型、字符型等数据类型是C语言的基本数据类型,用户可以在程序中用它们定义变量,解决一般问题。但是真正要处理的问题往往极为复杂,仅仅使用系统提供的基本数据类型很难满足用户的实际需求,C语言允许用户根据自身需要建立较为复杂的数据类型,从而定义变量,完成数据存储,解决实际问题。那么如何定义和使用用户自定义数据类型呢?视频动画讲解听讲记录单元描述提出本单元学习的主要目标——结构体的定义和使用视频动画讲解听讲记录单元介绍任务1项目需求“学生信息管理系统”的数据存储问题内容引入“学生信息管理系统”的主体就是“学生信息”,对于一个学生而言,包含学号(num)、姓名(name)、证件号(id)、生日(birthday)等信息。如果将这些信息变量均定义为相互独立的简单变量,就难以反映它们之间的关联关系和内在联系。使用C语言中提供的结构体类型,它可以允许用户自己建立由不同数据类型组成的数据结构,满足系统开发需要,有效存储数据信息,建立数据与数据之间的关联关系。视频动画讲解搜東资料、交流将人文、历史带入课堂
任务2相关知识9.2.1定义和使用结构体变量9.2.2结构体数组9.2.3结构体指针9.2.4链表9.2.5共用体类型9.2.6使用枚举类型9.2.7使用typedef声明新类型名内容引入C语言除了整型、实型、字符型等基本数据类型之外,数组可以完成同种类型批量数据的处理,但是仅这些数据类型是完全不够的。在实际应用中,往往需要将不同类型的数据组装成为一个整体,正如“学生信息管理系统”中的学生信息,由学号(num)、姓名(name)、证件号(id)、生日(birthday)等信息组成,它们既是一个不可分割的整体,又具有不同的数据类型,此时就需要使用结构体类型来实现。视频动画讲解讨论弘扬中国历史从思想和意识上打动学生树立民族荣誉感任务3解决问题学生信息管理9.3.1链表的生成9.3.2链表的展示9.3.3学生信息处理内容引入解决问题环节将通过链表的生成、链表的展示、学生信息处理,熟练掌握结构体的定义的方和使用的技巧。视频动画讲解听讲记录任务4能力测试内容引入经过以上知识点的学习,同学们是不是都摩拳擦掌,想一试身手呢?现在就请大家完成高手闯关训练吧!。在线测试点评讲解任务5项目实施9.5.1大显身手学生信息管理系统(VI版)内容引入同学们,你们准备好了吗?本单元以学生信息存储为蓝本讲了很多例子,大家还等什么呢?让我们快快行动起来吧!在第九单元的项目实施环节,我们要尝试着使用最为详细的学生信息存储结构,完成学生信息链表的建立、学生信息展示、插入学生信息、查找学生信息、删除学生信息以及修改学生信息等功能。期待你们的“学生信息管理系统(VI版)”!视頻动画讲解听讲记录本章各章节的具任务1项目需求“学生信息管理系统”的数据存储问题内容讲述“学生信息管理系统”的主体就是“学生信息”,对于一个学生而言,包含学号(num)、姓名(name)、证件号(id)、生日(birthday)等信息。如果将这些信息变量均定义为相互独立的简单变量,就难以反映它们之间的关联关系和内在联系。使用C语言中提供的结构体类型,它可以允许用户自己建立由不同数据类型组成的数据结构,满足系统开发需视频动画讲解搜集资料、交流视顼播放,拓展思锥
体实施要,有效存储数据信息,建立数据与数据之间的关联关系。任务2相关知识9.2.1定义和使用结构体变量9.2.2结构体数组9.2.3结构体指针9.2.4链表9.2.5共用体类型9.2.6使用枚举类型9.2.7使用typedef声明新类型名内容讲述1、 定义结构体类型2、 定义结构体变量3、 先定义结构体类型,再定义该类型的变量4、 在定义类型的同时定义变■5、 在不指定结构体类型名的情况下,直接定义结构体类型变量6、 结构体变量的初始化及引用实例9.1将学生信息放入结构体变量中,然后输出该学生的详细信息。7、 结构体数组实例9.2将我们班学生的信息存储起来,按照学生年龄进行排序,并打印班级学生信息。8、 结构体指针实例9.3使用结构体指针改写实例9.2,首先将我们班学生的信息存储起来,接着按照学生年龄进行排序,并打印班级学生信息。实例9.4将实例9.3的功能进行归类划分,分别定义sort函数实现排序的功能,display函数实现打印的功能。9、 何为链表10、 创建链表实例9.5对实例9.4进行修改,将原本使用数组存储学生信息的方法改为使用链表存储学生信息,使用display函数打印班级学生信息。11、 定义共用体类型12、 定义共用体类型及共用体变量13、 定义无名共用体类型及共用体变量14、 定义枚举类型15、 定义枚举变量16、 用一个新的类型名代替原有类型名17、 命名一个简单的类型名代替复杂的类型名视频动画讲解深入讨论细致讲述任务3解决问题学生信息管理9.3.1链表的生成9.3.2链表的展示9.3.3学生信息处理内容讲述视频动画讲解听讲记录
1、 链表的生成实例9.6使用链表存储班级学生信息。2、 链表的展示实例9.7将实例9.6生成的链表中的信息打印出来。3、 学生信息处理实例9.8删除学号为“3”的学生的全部信息。任务4能力测试内容讲述经过以上知识点的学习,同学们是不是都摩拳擦掌,想一试身手呢?现在就请大家来完成高手闯关训练吧!在线测试点评讲解任务5项目实施9.5.1大显身手学生信息管理系统(VI版)内容讲述同学们,你们准备好了吗?本单元以学生信息存储为蓝本讲了很多例子,大家还等什么呢?让我们快快行动起来吧!在第九单元的项目实施环节,我们要尝试者使用最为详细的学生信息存储结构,完成学生信息链表的建立、学生信息展示、插入学生信息、查找学生信息、删除学生信息以及修改学生信息等功能。期待你们的“学生信息管理系统(VI版)”!视频动画讲解听讲记录教学小结课前学生完成当前章节视频、文档的预习。课中,通过视频、动画形象生动展示结构体的定义、结构体变量的定义,使用结构体作为函数参数传参,链表的生成、展示、链表先关操作的过程,解决问题环节为项目设计、实现提供了更多思路,深入学习了使用结构体求解实际问题的方法。课后完成单元作业和单元测试。讲解记录拓展实践(课外)大显身手:完成MOOC课程上的单元作业和单元测试扩展练习:高手闯关
项目3学生信息管理系统教学章节名称单元10 “学生信息管理系统"数据保存授课教师授课班级学时6授课日期教学地点教学||标能力目标掌握函数定义、声明、调用的方法,理解递归算法,了解变量的存储方式和生存期;知识目标•掌握函数的定义格式:•函数调用的方法;•掌握函数参数的传递方式;•掌握变量的作用域及其存储类型。素质目标•提高分析问题、解决问题、探究问题的学习能力;•提高创新意识和团队协作意识。教学重点掌握模块化程序设计的方法,能够灵活运用递归算法解决实际问题:教学难点模块化程序设计、递归算法求解实际
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 诚信道歉保证书范本
- 课堂规则我遵守不调换座位保证
- 货物买卖合同总览
- 质量上乘货源供应保证
- 购销合同保修范本范例
- 购销合同签订中的合同履行保障
- 贷款协议取消样本
- 贷款合同签订注意事项
- 跨国技术服务合同
- 软件技术开发外包合同
- 中国银行境外汇款申请书打印模板(新)
- 《交互设计》课程教学大纲
- 全国重点文物保护单位保护项目安防消防防雷计划书
- 人武部年终工作总结
- 肾内科疾病诊疗常规
- 新高考改革背景下高中教学管理难点及应对措施_1
- 半导体专业术语(中英对照)ppt课件
- 埋地排水用钢带增强聚乙烯(PE)螺旋波纹管施工技术指南
- 医院科室护士长年终述职报告汇报PPT授课演示
- 装饰项目确保室内空气质量标准技术组织措施
- 智慧教室使用培训PPT课件
评论
0/150
提交评论