2023年《C语言程序设计》_谭浩强版精品讲义.pdf
《2023年《C语言程序设计》_谭浩强版精品讲义.pdf》由会员分享,可在线阅读,更多相关《2023年《C语言程序设计》_谭浩强版精品讲义.pdf(28页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 C 语言程序设计 _谭浩强版教案 C 语言程序设计教案 单 位:湖南理工职业技术学院 学院(教研室):风能工程学院 工业机器人专业 授课教师:周常欣 职 称:助教 课程名称 C 语言程序设计 教材 C 语言程序设计(第四版)作者:谭浩强 清华大学出版社 考核方式 考查课程。总成绩:课堂参与占 10%;试验报告占 20%;期末考试占 70%(闭卷考试:程序编写题目)。教 学 基 本 目 的 与 要 求 C 语言就是近年来国内外得到迅速推广使用的一种计算机语言。C 语言程序设计课程就是计算机专业与信息管理专业的核心专业基础课,它功能丰富,表达能力强,使用灵活方便,应用面广,目标程序效率高,可移植
2、性好,既具有高级语言的优点,又具有低级语言的优点。既适用于应用软件编写,又适用于系统软件的编写。在现代的工业机器人的众多语言中,大多编程风格以 C 语言非常类似,学生学好 C 语言,对将来的工作中,从事工业机器人现场编程就是非常有帮助的。课程的性质与任务 语言程序设计这门课就是我校工业机器人、分布式发电与微电网专业的专业必修课。作为计算机系的数据结构、c+、单片机编程等课程的前导课程,也就是一门实践性很强的课程,既要掌握概念,又要动手编程,还要上机调试运行。对工业机器人专业来说就是一门必修的课程。同时,这门课程也就是“湖南省非计算机专业学生计算机应用能力水平考试”二级考试的主要语种之一。课程的
3、教学目标 本课程的教学目标就是:通过理论与实践教学,使学生较好地掌握 C 语言各方面的知识,掌握基本的程序设计过程与技巧,具备初步的高级语言程序设计能力,并能熟练应用VC+6、0 集成环境进行 C 语言的编写、编译与调试,能应用 C 语言解决一般编程问题的水平。C 语言程序设计 _谭浩强版教案 教 学 重 点 与 难 点 一、程序设计与 C 语言 重点:计算机程序、计算机语言、C 语言编译软件的安装、最简单的 C 语言程序 二、算法:程序的灵魂 重点:简单的算法举例、算法的特性、用流程图表示算法。三、顺序结构程序设计 重点:C 语言的数据类型、C 语句的种类、赋值语句、数据的输入输出及输入输出
4、中最常用的控制格式。四、选择结构程序设计 重点:关系运算符与逻辑运算符及其组成的具有逻辑值的表达式、二条分支语句的格式及基本应用、多分支的选择语句。五、循环结构程序设计 重点:C 构成循环的四种方法,尤其就是后三种方法、break 与 continue 语句的基本作用。难点:while 语句;do-while 语句;for 语句;循环的嵌套;break 与 continue 语句。六、数组 重点:一维数组、二维数组的定义与引用;字符数组的定义与引用、常用字符串处理函数及字符处理函数;数组的应用 难点:二维数组的定义与引用;字符数组;数组的应用 七、函数 重点:函数的定义;函数的参数与函数的值;
5、函数的调用;函数的嵌套调用;函数的递归调用;数组作为函数参数;变量作用域;量存储类别;难点:函数定义、函数调用、函数声明等基本基本概念;函数的嵌套调用与递归调用;数组作为函数的参数、变量的存储类别与作用域。八、指针 重点与难点:指针与地址的基本概念、指针与变量的关系;指针与数组;指针与字符串、指针数组与二级指针;指针的应用 九、建立自己的数据类型 重点与难点:定义与使用结构体变量、用指针处理链表、共用体类型 十、文件 重点:文件的基本知识、fopen、fclose 函数打开与关闭文件、顺序读写数据文件、随机读写数据文件 难点:用二进制方式向文件读写一组数据。十一、常见错误分析 重点与难点:文件
6、的基本概念;文件的打开、关闭、常用读写方法。十二、数组高级应用 重点:不定长数组与二维数组的应用 难点:不定长数组与二维数组的应用 十三、综合应用 重点:数组、if 语句、循环语句、函数知识的综合应用 难点:二维数组、指针 教材、参考书 教材:C 程序设计(第四版)谭浩强著 清华大学出版社 2010 年 6 月 参考书:C 程序设计语言 Kernighan&Ritchie 机械工业出版社 C 语言程序设计 _谭浩强版教案 C 语言程序设计教案 第 1-2 课时 授课内容 第 1 章 C 语言概述 教学目的 与要求 了解 C 历史,名称来源、C 特点,掌握 C 程序基本结构;C 语言的版本、C
7、语言的关键字;重点 难点 C 语言的关键字;教 学 安 排 引言 语言:人人语言交流;聋哑人手势语;人机计算机语言 C 语言就是一种流行的计算机高级语言,C 语言适合于编写系统软件,也可以编写应用程序。讲授 一、语言出现的历史背景(1)C 语言的发展源于人们希望用高级语言编写操作系统。(C-BCPL第二字母)ALGOL60(高级语言)-CPL(硬件支持)-BCPC-B-C-标准 C-ANSI C-ISO C(2)语言既具有高级语言特性,又具有低级语言特性-中级语言。二、C 语言的特点 C 语言既具有一般高级语言特性,又具有低级语言特性。8 个特点。1、C 语言简洁、紧凑。2、运算符丰富。3、数
8、据结构类型丰富。4、具有结构化的控制语句。5、语法限制不太严格,程序设计自由度大。6、C 语言允许直接访问物理地址,能实现汇编语言的大部分功能,可以直接对硬件进行操作。7、生成目标代码质量高,程序执行效率高。8、与汇编语言相比,用 C 语言写的程序可移植性好。三、C 语言的关键字 附录 C(书本 378 页)四、C 语言的版本与关键字 auto、inline、restrict、_bool、_Complex、_Imaginary 就是后来扩充的,有些编译器也扩充了关键词。五、Turbo C 编译器的安装与使用 课后自我 总结分析 备注 C 语言程序设计 _谭浩强版教案 C 语言程序设计教案 第
9、3-4 课时 授课内容 第 1 章 VC+6、0、VS2015的安装与使用 教学目的 与要求 了解 C 语言常用的编译器;掌握VC+6、0、VS2015的下载与安装;掌握 VC+6、0、VS2015的使用 重点 难点 重点:VC+6、0、VS2015的使用 难点:VC+6、0、VS2015的使用 教 学 安 排 讲授 一、C 语言常用的编译器(1)32 位的 WINDOWS 操作系统与 64 位的 WINDOWS 操作系统(2)VC+6、0(2)VS2015 二、文件夹与压缩包 1、文件夹 2、文件的压缩与解压 3、软件的下载 4、软件安装的一般流程 5、产品 id 号、序列号与破解补丁 三、
10、VC+6、0、VS2015的下载与安装 7、生成目标代码质量高,程序执行效率高。8、与汇编语言相比,用 C 语言写的程序可移植性好。四、VC+6、0、VS2015的使用 VC+6、0、VS2015的使用 五、c4droid编译器的使用 1、基于安卓手机操作系统的 C 语言编译器 2、c4droid编译器的安装 3、c4droid编译器的使用 六、上机演示及实践操作 在 win7 电脑上示范VC+6、0、VS2015的编译器的安装与使用 课后自我 总结分析 同学们对计算机基础知识比较缺乏,安装 VC+6、0 时,不知道如何解压,也不知道如何下载与计算机操作系统版本匹配的 VC+6、0或 VS20
11、15 备注 C 语言程序设计教案 C 语言程序设计 _谭浩强版教案 第 5-6 课时 授课内容 第 2 章 算法的基本概念与简单算法举例 教学目的 与要求 了解算法的基本概念、程序设计的一般流程、掌握书写简单的算法流程、了解算法的特性 重点 难点 掌握书写简单的算法流程。教 学 安 排 引言(5 分钟)什么就是算法?菜谱、拳谱、歌谱都就是广义的算法。以湘潭去北京开会为例解释算法的优劣。1+2+3+100 的常规算法与高斯的首尾相加快递算法 讲授 一、简单算法举例(37 分钟)(1)求 5!(10 分钟)常规求解方式的烦琐引出用循环方式求解的方法。分析用循环方式求 5!的 C 语言代码(2)求
12、1 3 4 5 7 9 11(10 分钟)询问同学此题与 5!的异同,引每项就是 2n-1 的通项,在上题的基础上改动少量代码可实现本题的 C 语言编程。(3)求 2000-2500 年间的闰年(10 分钟)图示方式给学生解说闰年要满足的条件,引出要做多次判断的较复杂流程 提问:能被 4 整除,也能被 100 整除,就是不就是等同能被 400 整除这一认识误区 再次提问:2000 年就是不就是闰年,为什么?2060 年就是不就是闰年,为什么?检测学生就是否了解闰年判断流程。(4)素数的求法(7 分钟)根据素数的定义来循环判断就是否能被一系列数整除,最后判断就是不就是素数,请学生尝试写出求解流程
13、。二、算法的特性(3 分钟)1、有穷性。2、确定性。3、0 个或多少输入。4、1 个或多个输出。5、有效性。三、上机演示及实践操作 在讲课的同时切换软件界面调试代码 课后自我 总结分析 通过提问可以了解同学们对知识的掌握程序,互动性的教学设计更有益于教学 备注 C 语言程序设计教案 C 语言程序设计 _谭浩强版教案 第 7-8 课时 授课内容 第 2 章 算法的表示 教学目的 与要求 掌握用流程图表示算法;了解传统流程图的弊端;掌握 N-S 流程图表示方法。重点 难点 重点:掌握用流程图表示算法;掌握 N-S 流程图表示方法 难点:掌握用流程图表示算法;掌握 N-S 流程图表示方法 教 学 安
14、 排 讲授 一、用流程图表示算法(15 分钟)1、介绍流程图的图框及含义 起止框、输入输出框、判断框、处理框、流程线、连接点、注释框 2、示范用流程图表示两个分支的 if 语句 3、将例 2、1 的算法用流程图表示并分析 4、将例 2、2 的算法用流程图表示并分析 5、将例 2、3 的算法用流程图表示并分析 总结:流程图表示算法比较直观 2、将例 2、4 多项式求与用流程图表示(1)、书本求解本题算法的流程图表示(2)、其它算法的流程图表示 二、三种基本结构与改进的流程图(15 分钟)1、统流程图的弊端 2、三种基本结构(1)顺序(2)选择(3)循环 分当型与直到型两种 二、用 N S 流程图
15、表示算法(15 分钟)1、N-S流程图的符号 2、将例 2、1 的算法用 N-S流程图表示并分析 3、将例 2、2 的算法用 N-S流程图表示并分析 4、将例 2、3 的算法用 N-S流程图表示并分析 三、实践环节 对“分时问候”的算法绘制 N-S流程图 课后自我 总结分析 备注 C 语言程序设计教案 第 9-10 课时 C 语言程序设计 _谭浩强版教案 授课内容 第 3 章 最简单的 C 程序设计顺序程序设计 教学目的 与要求 举例说明顺序程序调序的基本流程、整型数据类型、整型数据的溢出。重点 难点 重点:整型数据类型;整型数据的溢出 难点:整型数据类型;整型数据的溢出 教 学 安 排 讲授
16、 一、顺序程序设计举例(10 分钟)1、绘制例 3、1 算法的 N-S流程图 2、根据 N-S流程图编写代码并调试 二、常量与变量(15 分钟)1、常量概念。(1)整型常量、整型常量、字符常量、字符串常量(2)ASCII 字符(3)转义字符 2、变量概念、变量名(1)先定义,后使用(2)变量名与变量值概念的异同 三、数据类型概述(5 分钟)1、不同类型的数据在内存中占用的存储单位长度就是不同的 VC+6、0 为字符型数据分配一个字节长度;为 int 型(基本型)分配 4 个字节的长度。2、存储不同数据类型的方法也就是不同的。四、整型数据(15 分钟)1、整型数据的分类:(1)基本整型(int
17、型)(2)短整型(short int);(3)长整型(long int)2、整型变量的符号属性(1)有符号型与无符号型(2)整型数据常见的存储空间与值的范围 3、整型数据的溢出 五、上机演示及实践操作 在讲课的同时切换编译界面调试整型数据溢出 课后自我 总结分析 备注 C 语言程序设计教案 第 11-12 课时 C 语言程序设计 _谭浩强版教案 授课内容 第 3 章 最简单的 C 程序设计顺序程序设计 教学目的 与要求 举例说明顺序程序调序的基本流程、数据的表现形式及运算、不同数据类型的混合运算。重点 难点 整型数据类型 long int 与 short int 数据类型、运算符的优级先级、不
18、同数据类型的混合运算 教 学 安 排 讲授 一、浮点型数据 1、浮点型数据的存储方式 2、浮点型数据的表现形式 浮点数据的指数形式 3、浮点型数据的类型(1)单精度(2)双精度(3)长双精度 二、字符型数据 1、字符常量表示。直接表示/转义表示(特殊的转义字符,一般字符也可以转义表示)。特殊转义字符对显示/打印的控制作用 2、字符变量 1 个字节,char 关键词。3、字符数据的存储 ASCII 码/二进制存储 C 语言可以将字符瞧做很短的整数处理。例 2-7A,例 2-8A可以瞧出字符数据的具有整数特性。三、怎样确定常量的类型 1、从常量的表示形式,如精度 2、只要瞧到单撇号括起来的单个字符
19、或转义字符即字符常量 四、运算符与表达式 1、基本的算术运算符 2、自增、自减运算符 3、算术表达式与运算符的优先级与结合性 五、数值型数据混合运算 1、自动隐式转换。2、强制类型转换。六、C 语句 1、控制语句 2、函数调用语句 3、表达式语句 4、空语句 5、复合语句 七、上机演示及实践操作 在讲课的同时切换编译界面调试整型数据溢出 课后自我 总结分析 备注 C 语言程序设计教案 第 13-14 课时 C 语言程序设计 _谭浩强版教案 授课内容 第 4 章(1)选择结构程序设计 教学目的 与要求 理解条件-产生逻辑值的表达式;熟练绘制选择语句算术的流程图 掌握关系运算符、关系表达式;逻辑运
20、算符、逻辑表达式 重点 难点 重点:关系运算符、关系表达式;逻辑运算符、关系表达式 难点:熟练绘制选择语句算术的流程图 教 学 安 排 讲授 一、选择结构的条件判断 1、理解条件-产生逻辑值的表达式 2、选择结构的流程图绘制 3、二元二次方程求根的算法及程序编写 二、关系运算符与关系表达式“关系运算”(比较运算)即,将两个值进行比较,判断就是否符合或满足给定的条件。1、关系运算符及其优先次序 a)C 语言提供 6 种关系运算符。表 5-1。b)关于优先次序:前 4 种高于后两种;关系低于算术;关系高于赋值 例 5-2。2、关系表达式 关系表达式的值就是逻辑值,即“真”“假”。C 语言没有逻辑型
21、数据,1“真”,0“假”。例 5-3。三、逻辑运算符与逻辑表达式“关系运算”(比较运算)即,两个逻辑值的运算。1、逻辑运算符。(1)&逻辑与,(2)|逻辑或,(3)!逻辑非 2、逻辑运算符的优先顺序:3、逻辑表达式 四、条件运算符与条件表达式 1、单目运算符、双目运算符、三目运算符的概念 2、C 语言唯一的三目运算符构成的条件表达式 课后自我 总结分析 备注 C 语言程序设计教案 第 15-16 课时 授课内容 第 4 章(2)选择结构程序设计 C 语言程序设计 _谭浩强版教案 教学目的 与要求 选择结构的嵌套;switch 语句实现多分支选择结构 重点 难点 重点:选择结构的嵌套;switc
22、h 语句实现多分支选择结构 难点:选择结构的嵌套;switch 语句实现多分支选择结构 教 学 安 排 讲授 一、if 语句的嵌套 1、在 if 语句中又包含一个或多个 if 语句称为 if 语句的嵌套。2、如果 if 与 else 的数目不一致,为了体现程序设计者的思想,可加花括号来确定配对的关系。3、利用代码缩进增强代码的可读性,养成良好的编程风格 4、例 4、5 阶跃函数用 if 语句的嵌套实现(1)绘制流程图(2)将流程图编写成程序 二、用 switch 语句实现多分支选择结构 如果条件分支较多,利用 if 语句显得程序冗长,且可读性降低。因此,C 语言设计了 switch 语句。1、
23、switch 语句的一般形式 2、例 4、6 输出考试成绩的 ABCD 段等级(1)绘制流程图(2)将流程图编写成程序 3、例 4、7 用 switch 语句处理菜单命令 三、选择结构程序设计综合举例 例 4、8 判断某一年就是否就是闰年 例 4、9 求二元二次方程的实根 四、上机演示及实践操作 在讲课的同时切换软件界面调试代码 课后自我 总结分析 备注 C 语言程序设计教案 第 17-18 课时 授课内容 第 5 章(1)循环结构程序设计 教学目的 与要求 掌握 while 当型循环、do while 直到型循环、for 循环 C 语言程序设计 _谭浩强版教案 重点 难点 while 当型循
24、环、do while 直到型循环、for 循环的形式、执行过程、使用注意问题 教 学 安 排 引言 重复执行就就是循环。重复工作就是计算机特别擅长工作之一。重复执行不就是简单地重复,每次重复,操作的数据(状态、条件)都可能发生变化。重复的动作就是受控制的,C 语言提供三种循环控制语句,构成了三种基本的循环结构。讲授 一、while 语句(当型循环)1、while 语句的一般形式就是:2、执行过程就是:(流程图、N-S图)3、使用 while 注意的问题。例 5-1:利用 while 语句,编写程序计算 1+2+3+100。二、do-while 语句(直到型循环)1、do-while 语句的一般
25、形式 2、do-while 执行过程(流程图)3、do-while 说明:例 5-4:利用 do-while 语句计算机 1+1/2+1/4+1/50。三、for 语句(当型循环)1、for 语句的一般形式(给出 while 循环的对应结构)2、for 循环执行过程(流程图)例 5-6:写一个程序,计算半径为 0、5,1、5,2、5,3、5,4、5,5、5mm 时圆的半径。例 5-7:求正整数 n 的阶乘 n!,其中 n 由用户输入。3、for 语句最容易理解、最常用的形式 4、for 语句说明(6 点)。C 语言的 for 语句功能强大,使用灵活。四、上机演示及实践操作 在讲课的同时切换软件
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C语言程序设计 2023 语言程序设计 谭浩强版 精品 讲义
限制150内