C语言程序设计(第五版)-谭浩强

上传人:ji****en 文档编号:127979680 上传时间:2020-04-07 格式:PPT 页数:533 大小:11.15MB
返回 下载 相关 举报
C语言程序设计(第五版)-谭浩强_第1页
第1页 / 共533页
C语言程序设计(第五版)-谭浩强_第2页
第2页 / 共533页
C语言程序设计(第五版)-谭浩强_第3页
第3页 / 共533页
C语言程序设计(第五版)-谭浩强_第4页
第4页 / 共533页
C语言程序设计(第五版)-谭浩强_第5页
第5页 / 共533页
点击查看更多>>
资源描述

《C语言程序设计(第五版)-谭浩强》由会员分享,可在线阅读,更多相关《C语言程序设计(第五版)-谭浩强(533页珍藏版)》请在金锄头文库上搜索。

1、教材 参考书与课时安排 教材C程序设计 第二版 谭浩强编著清华大学出版社参考书C语言程序设计教程谭浩强高等教育出版社C高级实用程序设计王士元清华大学出版社C程序设计试题汇编谭浩强清华大学出版社课时安排64学时 熟记C语言的基本概念熟悉TurboC的上机操作环境会读 会编 会调试C程序学习要点熟记C语言的语法学会算法分析与算法设计 课程目的 课程要求 课前请做好预习保持课堂安静 头脑清醒 思维活跃认真 独立 按时完成并提交作业重视上机实践 有效利用宝贵的上机时间 目录 第1章C语言概述 C语言程序设计第一章C语言概述 1 1C语言发展历史程序设计语言的发展 CPU指令系统 由0 1序列构成的指令

2、码组成如 10000000加10010000减 用助记符号描述的指令系统 可进行地址 位操作如ADDA B编写系统软件 直接对硬件操作 可读性 移植性差 面向机器的语言 C语言程序设计第一章C语言概述 可读性 移植性好 编写应用程序一般较难实现汇编语言的某些功能如 地址和位的操作 C语言兼有高级和低级语言的功能适合写系统软件和应用软件又称中级语言 C语言发展过程产生背景ALGOL60 CPL语言 BCPL B语言 写UNIX系统产生过程时间 1972 1973地点 美国贝尔实验室目的 UNIX操作系统设计人 Ken Thompson和Dennis M RitchieC标准标准C 1978年K

3、R合著 TheCProgrammingLanguage ANSIC 1983年87ANSIC 1987年1990年国际标准的ANSIC 1994年再次修订 C版本MicrosoftC或称MS CTurboC或称TC C语言程序设计第一章C语言概述 1 2C语言的特点语言简洁 紧凑 灵活运算符丰富数据结构 数据类型丰富链表 树 栈程序设计结构化 模块化结构化控制语句 if else while switch for函数作为模块单位语法不严格 程序设计自由度大可以访问内存地址 进行位运算生成目标代码质量高可移植性好 C语言程序设计第一章C语言概述 32个关键字 由系统定义 不能重作其它定义 aut

4、obreakcasecharconstcontinuedefaultdodoubleelseenumexternfloatforgotoifintlongregisterreturnshortsignedsizeofstaticstructswitchtypedefunsignedunionvoidvolatilewhileTurboC扩充了11个关键字 asm cs ds es sscdeclfarhugeinterruptnearpascal注意 在C语言中 关键字都是小写的 C语言程序设计第一章C语言概述 C语言简洁 紧凑 使用方便 灵活 ANSIC一共只有32个关键字 见365页附录B

5、 9种控制语句 if else for while do while continuebreakswitchgotoreturn C语言程序设计第一章C语言概述 C语言有9种控制语句 程序书写形式自由 主要用小写字母表示 压缩了一切不必要的成分 C语言程序设计第一章C语言概述 表1 1C语言与Pascal语言比较 通过表1 1我们可以得出结论 C比Pascal简练 因此源程序更短 编程效率高 34种运算符 算术运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 及其扩展条件运算符 逗号运算符 指针运算符 求字节数 sizeof强制类型转换 类型 分量运算符 下标运算符 其它 注意 各种运算符

6、混合使用 其优先级与结合方法是难点 可先预习 C语言程序设计第一章C语言概述 C语言运算符丰富 附录C C语言程序设计第一章C语言概述 C语言数据结构丰富 1 3简单的C程序介绍 example1 1ThefirstCProgram includevoidmain printf Thisisacprogram n C语言程序设计第一章C语言概述 输出 Thisisacprogram 例1 1第一个程序Thisisacprogram printf语句中的 n 是换行符 例1 2求俩个数的和 example1 1calculatethesumofaandb include Thisisthemai

7、nprogram voidmain inta b sum 定义变量 a 10 b 24 sum add a b printf sum d n sum Thisfunctioncalculatesthesumofxandy intadd intx inty intz z x y return z 运行结果 sum 34 C语言程序设计第一章C语言概述 printf语句中的 d 是表示 十进制整数类型 C语言程序设计第一章C语言概述 例1 3从键盘输入两个整数 输出其中较大的数 includevoidmain intmax intx inty inta b c scanf d d scanf语句中

8、 a 的含义是 取地址 输入 10 20 输出 max 20 声明部分 定义变量 调用max函数 返回值赋给c 定义max子函数 函数值 形参x y为整型 通过max函数将z值带回调用处 C语言格式特点习惯用小写字母 大小写敏感不使用行号 无程序行概念可使用空行和空格常用锯齿形书写格式 C语言程序设计第一章C语言概述 main main inti j sum sum 0 for i 1 i 10 i for j 1 j 10 j sum i j printf d n sum 优秀程序员的素质之一 使用TAB缩进 对齐有足够的注释有合适的空行 C语言结构特点函数与主函数程序由一个或多个函数组成必

9、须有且只能有一个主函数main 可以放在程序中任一位置程序执行从main开始 在main中结束 其它函数通过嵌套调用得以执行 程序语句C程序由语句组成用 作为语句终止符注释 为注释 不能嵌套不产生编译代码 例 Thisisthemain ofexample1 1 编译预处理命令 C语言程序设计第一章C语言概述 1 4C程序的上机步骤C程序开发步骤 file exe C语言程序设计第一章C语言概述 程序代码的录入 生成源程序 c 语法分析查错 翻译生成目标程序 obj 与其它目标程序或库链接装配 生成可执行程序 exe TurboC集成开发环境配置要求UNIX PC DOS MS DOS UCD

10、OS操作系统硬盘容量约2M 448KRAM运行空间安装TurboC创建子目录Install若不是可安装盘 将文件拷贝到对应的目录下 C语言程序设计第一章C语言概述 进入TurboCD TC TC exe 主控菜单文件操作FILE NewLoadSaveWriteto编辑操作EDIT 插入 修改块查找 替换编译链接COMPILELINKMAKE执行RUN退出TurboCAlt xAlt F Q帮助HelpF1Ctrl F1 C语言程序设计第一章C语言概述 基本操作 F10 调用主菜单F2 存盘F3 打开F1 帮助信息Alt F9 CompileCtrl F9 RunAlt F5 UserScre

11、enAlt X 退出Tc 常用热键 文本编辑 移动光标PgUp PgDn 上下翻页Ctrl PgUp Ctrl PgDn 文件首尾Home行首End行尾DdeleteInsertBkspace 块操作 Ctrl KB 块开始标记Ctrl KK 块结束标记Ctrl KC 块拷贝Ctrl KV 块移动Ctrl KY 块删除Ctrl KH 块隐藏 程序调试 F8 StepoverF7 TraceintoF4 GotoCursorCtrl F7 AddWatchCtrl F8 ToggleBreakpointCtrl F2 ProgramReset 窗口操作 F5 窗口缩放F6 窗口切换 C语言程序设

12、计第一章C语言概述 课后作业预习 题解与上机指导 一书中P181 199页的14 3 14 10节P236页实验1教材P12 1 5 1 6 1 7 1 8题 注意 有关设计程序的作业 必须经过上机调试 C语言程序设计第一章C语言概述 算法的概念 简单算法举例 算法的特性 怎样表示一个算法 第2章程序的灵魂 算法 C语言程序设计第二章程序的灵魂 算法 结构化程序设计方法 C语言程序设计第二章程序的灵魂 算法 程序包括的内容 数据结构 数据的类型和组织形式算法 操作步骤的描述 NikiklausWirth提出 教材认为 程序 算法 数据结构 程序设计方法 语言工具和环境 灵魂 加工对象 工具 C

13、语言程序设计第二章程序的灵魂 算法 2 1算法的概念为解决一个问题而采取的方法和步骤 就成为算法 例如 歌曲的乐谱 建造房子等 算法核心是解决 做什么 和 怎么做 的问题 P15页的例2 1 求1 5之积 可以有多种方法 一般采用简单和运算步骤少的 准确 高效计算机算法类别数值运算算法非数值运算算法 C语言程序设计第二章程序的灵魂 算法 2 2简单算法举例例2 1方法1 累乘方法2 用循环结构解决 灵活 通用 例2 2通过循环选择打印例2 3判断闰年例2 4累加求级数的和 循环改变正负号和分母加1 例2 5判断素数 课后认真思考 加深什么是算法的概念 C语言程序设计第二章程序的灵魂 算法 2

14、3算法的特性有穷性 在合理范围内可完成确定性 无歧义性有零个或多个输入 从外界得到信息有一个或多个输出 问题的答案有效性 每步有确定的结果 C语言程序设计第二章程序的灵魂 算法 2 4怎样表示一个算法自然语言表示2 2节例 易懂 文字冗长 易歧义性流程图表示用流程图符号构成 直观 易懂N S流程图表示伪代码表示计算机语言表示 顺序结构选择结构循环结构 C语言程序设计第二章程序的灵魂 算法 传统流程图流向混乱 可读性差 所以应该采用结构化流程图 结构化程序设计基本思想 任何程序都可以用三种基本结构表示 限制使用无条件转移语句 goto 结构化程序 由三种基本结构反复嵌套构成的程序优点 结构清晰

15、易读 提高程序设计质量和效率 三种基本结构顺序结构 C语言程序设计第二章程序的灵魂 算法 选择结构 二分支选择结构 多分支选择结构 C语言程序设计第二章程序的灵魂 算法 循环结构 当型循环结构 直到型循环结构 注 A B A1 An可以是一个简单语句 也可以是一个基本结构 C语言程序设计第二章程序的灵魂 算法 三种基本结构的共同特点 只有一个入口 只有一个出口 结构内的每一部分都有机会被执行到 结构内不存在 死循环 C语言程序设计第二章程序的灵魂 算法 2 5结构化程序设计方法结构化程序 用三种基本结构组成的程序基本设计思路 复杂问题分解成几个最基本问题 再分别处理 采用的方法 自顶向下 逐步

16、细化 模块化设计 复杂问题按功能分成多个子模块结构化编码 正确采用三种基本结构实现 C语言程序设计第二章程序的灵魂 算法 课后作业P36页习题 2 4 2 8 结合实验指导读懂答案 用N S图表示2 4题中 用传统流程图求解以下问题 将一个16进制数转化为10进制数复习二进制的基本概念 计算机文化基础 一书中P27 33页 第3章数据类型 运算符与表达式 C语言程序设计第三章程序的灵魂 算法 C的数据类型 常量与变量 整型数据 实型数据 字符型数据 变量赋初值 各种数值型数据间的混合运算 算术运算符和算术表达式 赋值运算符和赋值表达式 逗号运算符和逗号表达式 C语言程序设计第三章程序的灵魂 算法 3 1C的数据类型 数据类型决定 1 数据占内存字节数2 数据取值范围3 可以进行的操作 C语言程序设计第三章程序的灵魂 算法 常量和符号常量定义 程序运行过程中 其值不能被改变的量 常数 分类 直接常量 符号常量 3 2常量与变量 C语言程序设计第三章程序的灵魂 算法 符号常量 用标识符代表常量一般用大写字母 PRICE PI定义格式 define符号常量常量其值在作用域内不能改变和再赋值

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号