C语言程序设计谭浩强(第四版)教案.pdf
《C语言程序设计谭浩强(第四版)教案.pdf》由会员分享,可在线阅读,更多相关《C语言程序设计谭浩强(第四版)教案.pdf(56页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、C 语言程序设计教案课程名称课程名称教材教材考试课程。考试课程。总成绩:课堂参与占总成绩:课堂参与占 10%10%;试验报告占;试验报告占 20%20%;期末考试占;期末考试占 70%70%(闭卷考试)(闭卷考试)。C C 语言程序设计语言程序设计C C 语言程序设计(第四版)语言程序设计(第四版)作者:谭浩强作者:谭浩强 清华大学出版社清华大学出版社考核方式考核方式C C 语言是近年来国内外得到迅速推广使用的一种计算机语言。语言是近年来国内外得到迅速推广使用的一种计算机语言。C C 语言程序设计课程是语言程序设计课程是计算机专业和信息管理专业的核心专业基础课计算机专业和信息管理专业的核心专业
2、基础课,它功能丰富,它功能丰富,表达能力强,表达能力强,使用灵活方便,使用灵活方便,应用面广,目标程序效率高,可移植性好,既具有高级语言的优点,又具有低级语言的应用面广,目标程序效率高,可移植性好,既具有高级语言的优点,又具有低级语言的优点。既适用于应用软件编写,又适用于系统软件的编写。在现代的工业机器人的众多优点。既适用于应用软件编写,又适用于系统软件的编写。在现代的工业机器人的众多语言中,大多编程风格以语言中,大多编程风格以C C 语言非常类似,学生学好语言非常类似,学生学好C C 语言,对将来的工作中,从事工语言,对将来的工作中,从事工业机器人现场编程是非常有帮助的。业机器人现场编程是非
3、常有帮助的。课程的性质和任务语言程序设计这门课是我校工业机器人、分布式发电与微电网专业的专业必修课。语言程序设计这门课是我校工业机器人、分布式发电与微电网专业的专业必修课。作为计算机系的数据结构、作为计算机系的数据结构、c+c+、单片机编程等课程的前导课程,也是一门实践性很强、单片机编程等课程的前导课程,也是一门实践性很强的课程,既要掌握概念,又要动手编程,还要上机调试运行。对工业机器人专业来说是的课程,既要掌握概念,又要动手编程,还要上机调试运行。对工业机器人专业来说是一门必修的课程。一门必修的课程。同时,这门课程也是“湖南省非计算机专业学生计算机应用能力水平考试”二级考同时,这门课程也是“
4、湖南省非计算机专业学生计算机应用能力水平考试”二级考试的主要语种之一。试的主要语种之一。课程的教学目标本课程的教学目标是:本课程的教学目标是:通过理论和实践教学,通过理论和实践教学,使学生较好地掌握使学生较好地掌握 C C 语言各方面的知识,语言各方面的知识,掌握基本的程序设计过程和技巧,具备初步的高级语言程序设计能力,并能熟练应用掌握基本的程序设计过程和技巧,具备初步的高级语言程序设计能力,并能熟练应用VC+VC+集成环境进行集成环境进行 C C 语言的编写、编译与调试,能应用语言的编写、编译与调试,能应用C C 语言解决一般编程问题的水语言解决一般编程问题的水平。平。教教学学基基本本目目的
5、的和和要要求求一、程序设计和 C 语言重点:计算机程序、计算机语言、重点:计算机程序、计算机语言、C C 语言编译软件的安装、最简单的语言编译软件的安装、最简单的C C 语言程序语言程序二、算法:程序的灵魂重点:简单的算法举例、算法的特性、用流程图表示算法。重点:简单的算法举例、算法的特性、用流程图表示算法。三、顺序结构程序设计重点:重点:C C 语言的数据类型、语言的数据类型、C C 语句的种类、赋值语句、数据的输入输出及输入输出语句的种类、赋值语句、数据的输入输出及输入输出中最常用的控制格式。中最常用的控制格式。四、选择结构程序设计重点:关系运算符与逻辑运算符及其组成的具有逻辑值的表达式、
6、二条分支语句的重点:关系运算符与逻辑运算符及其组成的具有逻辑值的表达式、二条分支语句的格式及基本应用、多分支的选择语句。格式及基本应用、多分支的选择语句。五、循环结构程序设计重点:重点:C C 构成循环的四种方法,尤其是后三种方法、构成循环的四种方法,尤其是后三种方法、breakbreak 与与 continuecontinue 语句的基语句的基本作用。本作用。难点:难点:whilewhile 语句;语句;do-whiledo-while 语句;语句;forfor 语句;循环的嵌套;语句;循环的嵌套;breakbreak 与与 continuecontinue语句。语句。六、数组重点:一维数组
7、、二维数组的定义与引用;字符数组的定义与引用、常用字符串处重点:一维数组、二维数组的定义与引用;字符数组的定义与引用、常用字符串处教教学学重重点点和和难难点点用;用;数组作为函数的参数、变量的存储类别与作用域。数组作为函数的参数、变量的存储类别与作用域。八、指针理函数及字符处理函数;数组的应用理函数及字符处理函数;数组的应用难点:二维数组的定义与引用;字符数组;数组的应用难点:二维数组的定义与引用;字符数组;数组的应用七、函数重点:函数的定义;函数的参数和函数的值;函数的调用;函数的嵌套调用;函数重点:函数的定义;函数的参数和函数的值;函数的调用;函数的嵌套调用;函数的递归调用;数组作为函数参
8、数;变量作用域;量存储类别;的递归调用;数组作为函数参数;变量作用域;量存储类别;难点:函数定义、函数调用、函数声明等基本基本概念;函数的嵌套调用与递归调难点:函数定义、函数调用、函数声明等基本基本概念;函数的嵌套调用与递归调教材、教材、参考书参考书教材:C C 程序设计程序设计(第四版)(第四版)谭浩强著谭浩强著 清华大学出版社清华大学出版社 20102010 年年 6 6 月月参考书:C C 程序设计语言程序设计语言Kernighan&RitchieKernighan&Ritchie 机械工业出版社机械工业出版社C 语言程序设计教案第 1-2 课时授课内容授课内容第第 1 1 章章 C C
9、 语言概述语言概述教学目的教学目的和要求和要求重点重点难点难点C C 语言的关键字;语言的关键字;了解了解 C C 历史,名称来源、历史,名称来源、C C 特点,掌握特点,掌握 C C 程序基本结构;程序基本结构;C C 语言的版本、语言的版本、C C 语言的关键字;语言的关键字;引言语言:人人语言交流;聋哑人手势语;人机计算机语言语言:人人语言交流;聋哑人手势语;人机计算机语言C C 语言是一种流行的计算机高级语言,语言是一种流行的计算机高级语言,C C 语言适合于编写系统软件,也可以编写应用程序。语言适合于编写系统软件,也可以编写应用程序。讲授一、语言出现的历史背景(1 1)C C 语言的
10、发展源于人们希望用高级语言编写操作系统。语言的发展源于人们希望用高级语言编写操作系统。(C-BCPLC-BCPL 第二字母)第二字母)ALGOL60ALGOL60(高级语言)(高级语言)-CPL-CPL(硬件支持)(硬件支持)-BCPC-B-C-BCPC-B-C-标准标准 C-ANSI C-ISO CC-ANSI C-ISO C(2 2)语言既具有高级语言特性,又具有低级语言特性语言既具有高级语言特性,又具有低级语言特性-中级语言。中级语言。二、C 语言的特点C C 语言既具有一般高级语言特性,又具有低级语言特性。语言既具有一般高级语言特性,又具有低级语言特性。8 8 个特点。个特点。教教学学
11、安安排排1 1、C C 语言简洁、紧凑。语言简洁、紧凑。2 2、运算符丰富。、运算符丰富。3 3、数据结构类型丰富。、数据结构类型丰富。4 4、具有结构化的控制语句。、具有结构化的控制语句。5 5、语法限制不太严格,程序设计自由度大。、语法限制不太严格,程序设计自由度大。6 6、C C 语言允许直接访问物理地址,能实现汇编语言的大部分功能,可以直接对硬件进行操语言允许直接访问物理地址,能实现汇编语言的大部分功能,可以直接对硬件进行操作。作。7 7、生成目标代码质量高,程序执行效率高。、生成目标代码质量高,程序执行效率高。8 8、与汇编语言相比,用、与汇编语言相比,用C C 语言写的程序可移植性
12、好。语言写的程序可移植性好。三、C 语言的关键字附录附录 C C(书本(书本 378378 页)页)四、C 语言的版本和关键字autoauto、inlineinline、restrictrestrict、_bool_bool、_Complex_Complex、_Imaginary_Imaginary 是后来扩充的,有些编译器也是后来扩充的,有些编译器也扩充了关键词。扩充了关键词。五、Turbo C编译器的安装与使用课后自我课后自我总结分析总结分析备注备注C 语言程序设计教案第 3-4 课时授课内容授课内容第第 1 1 章章 VC+VC+、VS2015VS2015 的安装和使用的安装和使用教学目
13、的教学目的了解了解 C C 语言常用的编译器;掌握语言常用的编译器;掌握VC+VC+、VS2015VS2015 的下载与安装;的下载与安装;和要求和要求掌握掌握 VC+VC+、VS2015VS2015 的使用的使用重点:重点:VC+VC+、VS2015VS2015 的使用的使用难点:难点:VC+VC+、VS2015VS2015 的使用的使用重点重点难点难点讲授一、C 语言常用的编译器(1 1)3232 位的位的 WINDOWSWINDOWS 操作系统与操作系统与 6464 位的位的 WINDOWSWINDOWS 操作系统操作系统(2 2)VC+VC+(2 2)VS2015VS2015二、文件夹
14、与压缩包1 1、文件夹、文件夹2 2、文件的压缩与解压、文件的压缩与解压3 3、软件的下载、软件的下载4 4、软件安装的一般流程、软件安装的一般流程教教学学安安排排5 5、产品、产品 idid 号、序列号与破解补丁号、序列号与破解补丁三、VC+、VS2015 的下载与安装7 7、生成目标代码质量高,程序执行效率高。、生成目标代码质量高,程序执行效率高。8 8、与汇编语言相比,用、与汇编语言相比,用C C 语言写的程序可移植性好。语言写的程序可移植性好。四、VC+、VS2015 的使用VC+VC+、VS2015VS2015 的使用的使用五、c4droid编译器的使用1 1、基于安卓手机操作系统的
15、、基于安卓手机操作系统的C C 语言编译器语言编译器2 2、c4droidc4droid编译器的安装编译器的安装3 3、c4droidc4droid编译器的使用编译器的使用六、上机演示及实践操作在在 win7win7 电脑上示范电脑上示范VC+VC+、VS2015VS2015 的的编译器的安装和使用编译器的安装和使用课后自我课后自我总结分析总结分析同学们对计算机基础知识比较缺乏,安装同学们对计算机基础知识比较缺乏,安装VC+VC+时,不知道如何解压,也不知道如何下载时,不知道如何解压,也不知道如何下载和计算机操作系统版本匹配的和计算机操作系统版本匹配的VC+VC+或或 VS2015VS2015
16、备注备注C 语言程序设计教案第 5-6 课时授课内容授课内容第第 2 2 章章 算法的基本概念和简单算法举例算法的基本概念和简单算法举例教学目的教学目的和要求和要求重点重点难点难点掌握书写简单的算法流程。掌握书写简单的算法流程。了解算法的基本概念、程序设计的一般流程、掌握书写简单的算法流程、了解算法的特性了解算法的基本概念、程序设计的一般流程、掌握书写简单的算法流程、了解算法的特性引言(5 5 分钟)分钟)什么是算法?菜谱、拳谱、歌谱都是广义的算法。以湘潭去北京开会为例解释算法的优劣。什么是算法?菜谱、拳谱、歌谱都是广义的算法。以湘潭去北京开会为例解释算法的优劣。1+2+3+1+2+3+100
17、100 的常规算法和高斯的首尾相加快递算法的常规算法和高斯的首尾相加快递算法讲授一、简单算法举例(3737 分钟)分钟)(1 1)求)求 5 5!(1010 分钟)分钟)常规求解方式的烦琐引出用循环方式求解的方法。常规求解方式的烦琐引出用循环方式求解的方法。分析用循环方式求分析用循环方式求 5 5!的!的 C C 语言代码语言代码(2 2)求)求 1 1 3 3 4 4 5 5 7 7 9 9 1111(1010 分钟)分钟)询问同学此题与询问同学此题与 5!5!的异同,引每项是的异同,引每项是2n-12n-1 的通项,在上题的基础上改动少量代码可实现本的通项,在上题的基础上改动少量代码可实现
18、本教教学学安安排排(3 3)求)求 2000-25002000-2500 年间的闰年(年间的闰年(1010 分钟)分钟)图示方式给学生解说闰年要满足的条件,引出要做多次判断的较复杂流程图示方式给学生解说闰年要满足的条件,引出要做多次判断的较复杂流程提问:能被提问:能被 4 4 整除,也能被整除,也能被 100100 整除,是不是等同能被整除,是不是等同能被400400 整除这一认识误区整除这一认识误区再次提问:再次提问:20002000 年是不是闰年,为什么?年是不是闰年,为什么?20602060 年是不是闰年,为什么?检测学生是否了年是不是闰年,为什么?检测学生是否了解闰年判断流程。解闰年判
19、断流程。(4)(4)素数的求法(素数的求法(7 7 分钟)分钟)根据素数的定义来循环判断是否能被一系列数整除,最后判断是不是素数,请学生尝试写根据素数的定义来循环判断是否能被一系列数整除,最后判断是不是素数,请学生尝试写出求解流程。出求解流程。二、算法的特性(3 3 分钟)分钟)1 1、有穷性。、有穷性。2 2、确定性。、确定性。3 3、0 0 个或多少输入。个或多少输入。4 4、1 1 个或多个输出。个或多个输出。5 5、有效性。、有效性。三、上机演示及实践操作在讲课的同时切换软件界面调试代码在讲课的同时切换软件界面调试代码题的题的 C C 语言编程。语言编程。课后自我课后自我总结分析总结分
20、析备注备注通过提问可以了解同学们对知识的掌握程序,互动性的教学设计更有益于教学通过提问可以了解同学们对知识的掌握程序,互动性的教学设计更有益于教学C 语言程序设计教案第 7-8 课时授课内容授课内容第第 2 2 章章 算法的表示算法的表示教学目的教学目的和要求和要求重点重点难点难点掌握用流程图表示算法;了解传统流程图的弊端;掌握掌握用流程图表示算法;了解传统流程图的弊端;掌握N-SN-S 流程图表示方法。流程图表示方法。重点:掌握用流程图表示算法;掌握重点:掌握用流程图表示算法;掌握N-SN-S 流程图表示方法流程图表示方法难点:掌握用流程图表示算法;掌握难点:掌握用流程图表示算法;掌握N-S
21、N-S 流程图表示方法流程图表示方法讲授一、用流程图表示算法(1515 分钟)分钟)1 1、介绍流程图的图框及含义、介绍流程图的图框及含义起止框、输入输出框、判断框、处理框、流程线、连接点、注释框起止框、输入输出框、判断框、处理框、流程线、连接点、注释框2 2、示范用流程图表示两个分支的、示范用流程图表示两个分支的if if 语句语句3 3、将例的算法用流程图表示并分析、将例的算法用流程图表示并分析4 4、将例的算法用流程图表示并分析、将例的算法用流程图表示并分析5 5、将例的算法用流程图表示并分析、将例的算法用流程图表示并分析总结:流程图表示算法比较直观总结:流程图表示算法比较直观2 2、将
22、例多项式求和用流程图表示、将例多项式求和用流程图表示教教学学安安排排(1 1)、书本求解本题算法的流程图表示、书本求解本题算法的流程图表示(2 2)、其它算法的流程图表示、其它算法的流程图表示二、三种基本结构和改进的流程图(1515 分钟)分钟)1 1、统流程图的弊端、统流程图的弊端2 2、三种基本结构、三种基本结构(1 1)顺序)顺序(2 2)选择)选择(3 3)循环)循环 分当型和直到型两种分当型和直到型两种二、用 NS 流程图表示算法(1515 分钟)分钟)1 1、N-SN-S 流程图的符号流程图的符号2 2、将例的算法用、将例的算法用 N-SN-S 流程图表示并分析流程图表示并分析3
23、3、将例的算法用、将例的算法用 N-SN-S 流程图表示并分析流程图表示并分析4 4、将例的算法用、将例的算法用 N-SN-S 流程图表示并分析流程图表示并分析三、实践环节对“分时问候”的算法绘制对“分时问候”的算法绘制N-SN-S 流程图流程图课后自我课后自我总结分析总结分析备注备注C 语言程序设计教案第 9-10 课时授课内容授课内容第第 3 3 章章 最简单的最简单的 C C 程序设计顺序程序设计程序设计顺序程序设计教学目的教学目的和要求和要求重点重点难点难点举例说明顺序程序调序的基本流程、整型数据类型、整型数据的溢出。举例说明顺序程序调序的基本流程、整型数据类型、整型数据的溢出。重点:
24、整型数据类型;整型数据的溢出重点:整型数据类型;整型数据的溢出难点:整型数据类型;整型数据的溢出难点:整型数据类型;整型数据的溢出讲授一、顺序程序设计举例(10(10 分钟分钟)1 1、绘制例算法的、绘制例算法的 N-SN-S 流程图流程图2 2、根据、根据 N-SN-S 流程图编写代码并调试流程图编写代码并调试二、常量与变量(15(15 分钟分钟)1 1、常量概念。、常量概念。(1)(1)整型常量、整型常量、字符常量、字符串常量整型常量、整型常量、字符常量、字符串常量(2)ASCII(2)ASCII 字符字符(3)(3)转义字符转义字符2 2、变量概念、变量名、变量概念、变量名教教学学安安排
25、排(2)(2)变量名与变量值概念的异同变量名与变量值概念的异同三、数据类型概述(5(5 分钟分钟)1 1、不同类型的数据在内存中占用的存储单位长度是不同的、不同类型的数据在内存中占用的存储单位长度是不同的VC+VC+为字符型数据分配一个字节长度;为为字符型数据分配一个字节长度;为intint 型(基本型)分配型(基本型)分配 4 4 个字节的长度。个字节的长度。2 2、存储不同数据类型的方法也是不同的。、存储不同数据类型的方法也是不同的。四、整型数据(15(15 分钟分钟)1 1、整型数据的分类:、整型数据的分类:(1)(1)基本整型基本整型(int(int 型型)(2)(2)短整型短整型(s
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 谭浩强 第四 教案
限制150内