jin2_第二章_C语言程序设计概述(1).ppt_第1页
jin2_第二章_C语言程序设计概述(1).ppt_第2页
jin2_第二章_C语言程序设计概述(1).ppt_第3页
jin2_第二章_C语言程序设计概述(1).ppt_第4页
jin2_第二章_C语言程序设计概述(1).ppt_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2019 12 28 1 第二章C语言程序设计概述 李书涛list37 2019 12 28 2 目录 1C语言概述 2C语言的程序结构 3TurboC的集成环境 4本章小结 第二章C语言程序设计概述 2019 12 28 3 1C语言概述 1C语言概述一 什么是计算机语言 现代科学的迅猛发展使电子计算机几乎进入了人类生活的各个领域 计算机成为人类必不可少的有力助手 众所周知 计算机内部采用二进制工作 目前人和计算机还不能像人和人之间那样完全用自然语言进行交流 计算机和人之间的交流需借助于 计算机语言 计算机语言是按照一定的规则而编制的 是人和计算机都能理解的语言 计算机语言是人们用来编写程序 制作软件的工具 2019 12 28 4 二 如何学习计算机语言 学软件与学语言的区别 软件由语言编制而成 是解决某类问题 具有确定的 有限的功能 语言由确定的规则组成 可构造解决各种问题的软件 学语言 学规则 学方法 学设计 学应用 学软件 学思想 学功能 学操作 2019 12 28 5 语法 语义 语用 各种符号及其组合所出现的行为来源 使用和影响 计算机语言的含义 2019 12 28 6 三 计算机语言的发展1 机器语言用二进制数表示指令 例如 1000101011010000就是一条Intel的机器指令 其功能是 将累加器的低8位传送到数据寄存器的低8位 即把寄存器AL中内容移入到寄存器DL中 由0和1组成的指令序列 程序 称为机器代码 计算机直接用机器代码工作速度快 效率高 但是人们很难记忆和理解这些机器代码 有时不得不依靠八进制和十六进制码来帮助记忆 例如 上面16位二进制数可以用4位十六进制码 8AD0 H来表示 2019 12 28 7 用机器语言写的程序称为 目标程序 机器语言 这种完全由0和1组成的二进制信息称为机器语言 这种语言不仅难学难记而且没有通用性 不同型号的计算机机器语言完全不同 机器语言的特点 计算机唯一能直接执行 但它难懂 难记 难写 难检查 难修改 没有实用价值 2019 12 28 8 2 汇编语言 鉴于机器语言的缺陷 人们发展了汇编语言 并采用一些助记符来代替机器代码 例如 上面指令可表示为 MOVDL AL 但汇编语言仍保留着机器语言的弊病 没有摆脱具体机器的依赖性 因此称为面向机器的语言 1000101011010000 与 MOVDL AL 等效机器语言汇编语言 2019 12 28 9 翻译 计算机能直接执行汇编源程序吗 用汇编语言编写的程序称为汇编 目标程序 源程序 源程序 汇编语言 不能 汇编源程序的执行过程 结果 汇编语言的特点 结构紧凑 执行效率高 有实用价值 运行 2019 12 28 10 3 高级语言 特点 面向过程 编程要解决两个问题 做什么 怎样做 随着计算机的发展 急需要解决的是计算机硬件的高速度和程序编制的低效率之间的矛盾 在50年代末期出现了 高级程序设计语言 它较为接近自然语言 具有易学易懂的特点 更重要的是 它是面向用户的语言 当学会了一种高级语言后 在各种类型的计算机上都能使用 但也略有差异 高级语言 自从高级语言问世以来 出现过上千种程序设计语言 通常可以分为通用型和专用型两大类 具体划分为 通用型语言 适合于数值计算的语言 例如ALGOL 60语言 FORTRAN语言 结构化程序设计语言 例如Pascal语言 C语言 适合商用和管理领域的语言 例如COBOL FoxBASE FOXPRO语言 还有一些交互式的通用语言 例如BASIC语言 专用型语言 种类多 功能各异 如适合数控机床工作的数控语言APL 适用于计算机辅助设计的AHPL和DDL语言 适合符号处理的LISP语言 适合于人工智能的LISP PROLOG语言 适合于系统分析的PSL PSA语言等 汇集性语言 它综合各类语言特点 功能强大 适用范围较广 如ADA和PL I语言 高级语言 常用的高级语言有 BASIC FORTRAN 公式翻译 ALGOL 算法语言 COBOL Pascal C PL LISP PROLOG Ada APL等等 BASIC 初学者通用符号指令代码 面对这么多的高级语言 要全面掌握它是不可能的 事实上在实际计算机应用中常用的语言才十几种 初学者应以一种语言为模板 深入学习和应用 掌握该语言的基础 结构及编程等技术 这样才能为学习其他高级语言打下基础 2019 12 28 13 4 第四代语言 特点 非过程化 编程只要解决一个问题 做什么 常用的第四代语言有 DBMS 数据库管理系统 如 FoxPro Oracle INFORMIX SYBASE等等 5 第五代语言 特点 人工智能语言 可自动编写程序 例如 LIST 正在研制发展中 面向问题的语言 四 计算机语言分类 面向过程语言面向对象语言 FORTRANBASICCPASCALCOBOLLISP C TurboPASCALVisualBASICVisualC VisualFoxPro 2019 12 28 15 五 C语言特点1 C语言吸取了汇编语言的精华 汇编语言是一种面向机器的语言 尽管它编程麻烦 但目标程序质量高 运行快 有很强的生命力 1 C语言提供了对位 字节以及地址的操作 使程序可以直接对内存 指定寄存器进行操作 2 C语言吸取了宏汇编技术中的一些灵活处理方式 提供宏代换 define和文件蕴含的预处理命令 include 3 C语言能方便地与汇编程序相连接 C语言中引用汇编程序与引用函数一样方便 2019 12 28 16 2 C语言继承和发扬了高级语言的长处 1 继承了PASCAL语言具有丰富数据类型的特点 具有完备的数据结构 并可以用 把一串语句括起来作为复合句 分程序 来处理 2 吸取了FORTRAN语言中模块结构的思想 C语言中每个函数都是独立的 允许单独进行编译 这有利于大程序的分工编程和调试工作 3 允许递归调用 由于采用递归使有些算法的实现简明 清晰 2019 12 28 17 3 C语言规模适中 语言简洁 编译生成的目标代码质量高 执行效率高 一般只比汇编程序生成的目标代码效率仅仅低10 20 但C语言编程速度快 程序可读性好 易于调试和修改 2019 12 28 18 4 C语言可移植性好 统计资料表明 C编译程序的80 以上是公共代码 因此稍加修改就能移植到各种不同的计算机上 C语言的优点很多 但也有不足之处 运算符优先级太多不便记忆 有些与常规约定有所不同 数据类型转换比较灵活 类型检验能力弱 不够安全 编程自由度大 给不熟练的程序员带来一定困难 C语言特点小结 2019 12 28 20 解释方式 编译方式 计算机语言程序的两种执行方式 2019 12 28 21 2C语言的程序结构 2C语言的程序结构一 C语言程序结构 main 程序首部 说明语句数据结构语句输入语句执行语句运算处理算法设计 输出语句 2019 12 28 22 程序举例 file simple c sum a b c注释语句 main 程序首部 inta b c sum 说明语句a 1 b 2 赋值语句scanf d 输出语句 执行语句 2019 12 28 23 Cprogram main inta b c scanf d d 例题 从a b两个数中找出最大数 2019 12 28 24 二 C程序的基本组成1 基本字符集 数字 0123456789字母 abc zABC Z运算符 特殊符号 下划线 回车 r 换行 n 制表符 t ASCII字符集 2019 12 28 25 2 标识符 标识符内容 常量名 变量名 数组名 类型名 存储方式名 语句 函数名 文件名等 a标识符规则 字母或下划线开头 后面是字母 下划线或数字组成的字符串 要求见名知意 call ntest39 string1abccall n39test string1c2 0 例 对象 常量 变量 数组 类型 存储方式 语句 函数 文件 合法 非法 2019 12 28 26 标识符说明 1 在C语言中 标识符中大小写字母是有区别的 程序中基本上都采用小写字母表示各种标识符 如变量名 数组名 函数名等 书写的各种语句也均用小写字母 而大写字母只用来定义宏名等 用的不多 2 不同的系统对标识符的长度有不同的要求 有的要求为6个字符 有的允许使用8个字符 而TurboC系统下的有效长度为1至32个字符 3 除了少数工作单元用单个字符作标识符外 一般的应做到见名知意 以提高程序的可读性 如用sum表示和 score表示成绩 max表示最大等等 2019 12 28 27 3 关键字 autobreakcasecharconstcontinuedefaultdodoubleelseenumexternfloatforgotoifintlongregisterreturnshortsignedsizeofstaticstructswitchtypedefunionunsignedvoidvolatilewhile 又称标准标识符或保留字或基字 32个 用户不能用关键字作标识符 由C系统定义 2019 12 28 28 3TurboC的集成环境 3TurboC的集成环境一 C语言程序的执行方式 编译方式 C程序的上机执行过程 2019 12 28 30 英文字母 大 小写 数字0 9特殊字符 文件名 主文件名 文件扩展名 主名与扩展名可以使用的字符 外存上众多的文件以文件名区分 1 文件名的组成 255个字符 附 文件名 2019 12 28 31 COMDOS命令文件 EXE可执行程序 OBJ目标文件 SYS系统文件 BAT批处理文件 TXT文本文件 BAK备份文件 LIB库文件 CC语言程序 扩展名代表文件的类型 docWord文档 txt纯文本文件 ppt电子幻灯演示文稿 bmp位图文件 不同类型的文件用不同的图标表示 2 文件扩展名的规定 2019 12 28 32 二 TC系统的安装与启动1 TurboC的安装 在D上建一文件夹 命名tc 将系统拷入tc文件夹 单击 开始 运行 打开 执行下述命令 d tc arjx 单击 确定 2 TurboC的启动进入tc 双击tc exe 2019 12 28 34 信息区 编辑区 菜单区 版本信息 主界面 功能键 三 TC上机操作1 TurboC的主界面 2019 12 28 35 当前光标所在行 列 插入状态 缩进状态 文件名 1 编辑区 2019 12 28 36 文件 编辑 运行 共有八项 编译 工程管理 选项 调试 断点 用F10激活主菜单 用 确定选项 打开下级菜单 2 主菜单 2019 12 28 37 文件 共九项选项 装入一个文件 输入文件名 可以是新文件 也可以是已有文件 F3 load 建立一个新文件 缺省名NONAME C new 文件管理 2019 12 28 38 pick 从最近使用过的文件中挑选文件 提供8个 save 另存为 将缺省文件名保存为 Pick Save Writeto 2019 12 28 39 显示指定路径下的文件 定义新的路径 Directory Changedir 2019 12 28 40 暂退到DOS界面按EXIT返回 进入DOS界面退出TC 进入编辑窗口 用ALT 菜单命令项的第一个字母也可以选择菜单项 Osshell Quit 2019 12 28 41 编译 语法检查 连接 与库函数连接 生成执行文件 prog1 cprog1 objprog1 exe 运行 Run 编译菜单 编译状态 错误信息提示 编译 CompiletoOBJ 连接窗口 错误信息 2 错误信息 选项 路径 改变输出路径 3 改变输出路径 2019 12 28 45 1 进入TC目录 键入TC 2 按F10 激活主菜单 4 进入编辑区 录入源程序 3 主菜单中选 File 下级菜单中选 Load 输入文件名 缺省扩展名为 C 5 在 File 下级菜单中选 Save 存盘 用ALT 菜单命令项的第一个字母 F3 F2 编辑源程序 三 上机步骤 2019 12 28 46 6 主菜单中 选 Run 系统自动进行编译 改错 连接 改错 运行 在DOS下显示结果 返回TC 用ALT F5可以返回DOS界面查看运行结果 演示 自动编译 改错 连接 改错 运行 可用Ctrl F9直接运行 2019 12 28 47 四 C 程序的实现 C 源程序和C源程序一样 也需经过下述四步操作才能运行 编辑 编译 连接 运行C 源程序的运行环境是 VisualC 6 0 2019 12 28 48 4本章小结 4本章小结 本章从C语言的发展讲到C程序设计的特点与结构的组成 C语言程序设计首先要掌握C语言的程序结构组成 熟练使用C语言的标识符 熟悉C语言的保留字关键字等 最后介绍了TurboC的集成环境 TurboC2 0的特点与配置要求 以及可以灵活快速地使用TurboC集成开发环境所需要使用的快捷键 对于初学者来说 本章应当重点掌握C语言结构特点与编程环境的使用 以便为程序设计的学习打下基础 本章的知识点较多 只要掌握常用的基本知识就可以了 2019 12 28 49 练习思考题 1 C语言在算法实现方面有哪些特点

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论