程序设计和C语言

上传人:xiao****017 文档编号:22037649 上传时间:2021-05-19 格式:PPT 页数:47 大小:759KB
收藏 版权申诉 举报 下载
程序设计和C语言_第1页
第1页 / 共47页
程序设计和C语言_第2页
第2页 / 共47页
程序设计和C语言_第3页
第3页 / 共47页
资源描述:

《程序设计和C语言》由会员分享,可在线阅读,更多相关《程序设计和C语言(47页珍藏版)》请在装配图网上搜索。

1、主 讲 :黄 向 党 副 教 授联 系 电 话 : 13648661918 课 程 要 求课前请做好预习认真、独立、按时完成并提交作业重视上机实践 所有作业必须独立完成作业必须经上机调试通过上机考勤3次缺席,按不及格处理发现上机时间上网,按缺席一次处理上 机 要 求 本 课 程 教 学 特 点实践性强知识点结构是非线性的时间紧,任务重,尽量按教材安排进行讲授,便于大家预习和复习 1.1 什 么 是 计 算 机 程 序1.2 什 么 是 计 算 机 语 言1.3 C语 言 的 发 展 及 其 特 点1.4 最 简 单 的 C语 言 程 序1.5 运 行 C程 序 的 步 骤 与 方 法1.6 程

2、 序 设 计 的 任 务 1.1 什 么 是 计 算 机 程 序裸机 计 算 机 系 统 是 由硬 件 和 软 件 来 组成 的计 算 机 系 统 组 成 1.1 什 么 是 计 算 机 程 序程 序 : 一 组 计 算 机 能 识 别 和 执 行 的 指 令 ,通 常 , 程 序 是 为 完 成 一 项 任 务 由 汇 编 语 言或 高 级 语 言 编 写 的 代 码 的 集 合 。软 件 : 功 能 相 对 集 中 , 多 个 程 序 模 块 有 集体 。 1.2 什 么 是 计 算 机 语 言计 算 机 语 言 发 展 阶 段 :u机 器 语 言 ( 由 0和 1组 成 的 指 令 )u

3、符 号 语 言 ( 用 英 文 字 母 和 数 字 表 示 指 令 )u高 级 语 言 ( 接 近 于 人 的 自 然 语 言 和 数 学 语 言 )l面 向 过 程 的 语 言 ( 非 结 构 化 的 语 言 、 结 构 化 语 言 )l面 向 对 象 的 语 言 低 级 语 言 1.3 C语 言 的 发 展 及 其 特 点 C语 言 是 国 际 上 广 泛 流 行 的 计 算 机 高 级 语 言 。 最 初 的C语 言 只 是 为 实 现 UNIX操 作 系 统 设 计 的 C语 言 的 发 展 :BCPL语 言 B语 言 C语 言精 练 、 接 近 硬 件 , 但过 于 简 单 , 无

4、数 据 类 型 具 有 多 种 数 据 类 型 C语 言 诞 生 于 著 名 的 美 国 贝 尔 实 验 室 , 刚 开 始 是 用于 UNIX系 统 中 的 。 那 里 聚 集 了 当 时 世 界 顶 尖 的 软 件 高手 。 在 20世 纪 60年 代 以 前 , 软 件 人 员 都 是 用 较 低 级 的语 言 : 机 器 语 言 编 写 程 序 , 这 种 语 言 虽 然 编 写 的 程 序执 行 效 率 高 , 但 是 编 写 时 特 别 麻 烦 。贝 尔 实 验 室 优 秀 的 程 序 员 就 创 建 了 与 他 们 自 由 编程 风 格 很 相 近 的 C语 言 , 这 种 语

5、言 有 较 强 的 灵 活 性 ,编 程 方 便 简 单 , 并 且 移 植 性 较 好 。 C语 言 的 移 植 性 使得 UNIX可 以 安 装 运 行 在 不 同 的 机 型 上 , 大 大 推 广 了UNIX的 使 用 范 围 , 而 UNIX的 广 泛 使 用 又 促 进 了 C的 威信 , 提 高 了 C语 言 在 国 际 社 会 中 的 地 位 , 而 成 为 普 遍被 人 接 受 的 编 程 语 言 。 The C Programming Language C语 言 的 发 展目 前 流 行 的 C语 言 有 多 种 版 本 , 有 Turbo C、 Quick C、 Micr

6、osoft C、 Borland C等 , 不 过 它 们 的 核 心 差 不 多 都 是一 样 的 。 而 Turbo C是 广 泛 被 人 接 受 的 C语 言 教 学 语 言 , 我们 这 学 期 用 的 就 是 Turbo C。 1.3 C语 言 的 发 展 及 其 特 点1983年 , 美 国 国 家 标 准 协 会 (ANSI)成 立 了 一 个 委 员 会 , 根 据 C语 言 问 世 以来 各 种 版 本 对 C语 言 的 发 展 和 扩 充 , 制定 了 第 一 个 C语 言 标 准 草 案 (83 ANSI C)。 1.3 C语 言 的 发 展 及 其 特 点1989年 ,

7、 ANSI公 布 了 一 个 完 整 的 C语 言 标 准 ANSI X3.159-1989(常称 ANSI C, 或 C89)。 1.3 C语 言 的 发 展 及 其 特 点 (版 本 )1990年 , 国 际 标 准 化 组 织ISO(International Standard Organization) 接 受 C89作 为 国 际 标准 ISO/IEC 9899:1990, 它 和ANSI的 C89基 本 上 是 相 同 的 。 1.3 C语 言 的 发 展 及 其 特 点1995年 , ISO对 C90作 了 一 些 修 订 ,1999年 , ISO又 对 C语 言 标 准 进 行

8、 修订 , 在 基 本 保 留 原 来 的 C语 言 特 征 的 基础 上 , 针 对 应 用 的 需 要 , 增 加 了 一 些 功能 , 尤 其 是 C+中 的 一 些 功 能 , 命 名为 ISO/IEC 9899:1999。 1.3 C语 言 的 发 展 及 其 特 点2001、 2004年 先 后 进 行 了 两 次 技 术 修正 ( TC1和 TC2) 。 ISO/IEC 9899:1999(及 其 技 术 修 正 )被 称 为 C99。C99是 C89(及 1995基 准 增 补 1)的 扩充 。 1.3 C语 言 的 发 展 及 其 特 点本 书 的 叙 述 以 C99标 准

9、为 依 据 ( 对 C99新 增 加 的 功 能 作 特 别 的 说 明 ) 。目 前 不 同 软 件 公 司 提 供 的 各 C语 言 编 译系 统 多 数 并 未 完 全 实 现 C99建 议 的 功 能本 书 中 程 序 基 本 上 都 可 以 在 目 前 所 用 的编 译 系 统 (如 VC+ 6.0, Turbo C+ 3.0,GCC)上 编 译 和 运 行 。 1.3 C语 言 的 发 展 及 其 特 点C语 言 是 一 种 用 途 广 泛 、 功 能 强 大 、 使用 灵 活 的 过 程 性 (procedural)编 程 语言 , 既 可 用 于 编 写 应 用 软 件 , 又

10、 能 用 于编 写 系 统 软 件 。 因 此 C语 言 问 世 以 后 得到 迅 速 推 广 。 1.3 C语 言 的 发 展 及 其 特 点C语 言 主 要 特 点 :u语 言 简 洁 、 紧 凑 , 使 用 方 便 、 灵 活 。l只 有 37个 关 键 字 、 9种 控 制 语 句l程 序 书 写 形 式 自 由 , 源 程 序 短 1.3 C语 言 的 发 展 及 其 特 点C语 言 主 要 特 点 :u运 算 符 丰 富 。l有 34种 运 算 符l把 括 号 、 赋 值 、 强 制 类 型 转 换 等 都 作 为运 算 符 处 理l表 达 式 类 型 多 样 化 1.3 C语 言

11、 的 发 展 及 其 特 点C语 言 主 要 特 点 :u数 据 类 型 丰 富 。l包 括 :整 型 、 浮 点 型 、 字 符 型 、 数 组 类 型 、指 针 类 型 、 结 构 体 类 型 、 共 用 体 类 型lC99又 扩 充 了 复 数 浮 点 类 型 、 超 长 整 型(long long)、 布 尔 类 型 (bool)l指 针 类 型 数 据 , 能 用 来 实 现 各 种 复 杂 的 数 据结 构 (如 链 表 、 树 、 栈 等 )的 运 算 。 1.3 C语 言 的 发 展 及 其 特 点C语 言 主 要 特 点 :u具 有 结 构 化 的 控 制 语 句l如 ife

12、lse语 句 、 while语 句 、dowhile语 句 、 switch语 句 、 for语 句l用 函 数 作 为 程 序 的 模 块 单 位 , 便 于 实 现程 序 的 模 块 化lC语 言 是 完 全 模 块 化 和 结 构 化 的 语 言 1.3 C语 言 的 发 展 及 其 特 点C语 言 主 要 特 点 :u语 法 限 制 不 太 严 格 , 程 序 设 计 自 由 度 大 。l对 数 组 下 标 越 界 不 做 检 查l对 变 量 的 类 型 使 用 比 较 灵 活 , 例 如 , 整型 量 与 字 符 型 数 据 可 以 通 用lC语 言 允 许 程 序 编 写 者 有

13、较 大 的 自 由 度 ,因 此 放 宽 了 语 法 检 查 1.3 C语 言 的 发 展 及 其 特 点C语 言 主 要 特 点 :u允 许 直 接 访 问 物 理 地 址 , 能 进 行 位 操 作 ,可 以 直 接 对 硬 件 进 行 操 作lC语 言 具 有 高 级 语 言 的 功 能 和 低 级 语 言的 许 多 功 能 , 可 用 来 编 写 系 统 软 件l这 种 双 重 性 , 使 它 既 是 成 功 的 系 统 描 述语 言 , 又 是 通 用 的 程 序 设 计 语 言 1.3 C语 言 的 发 展 及 其 特 点C语 言 主 要 特 点 :u用 C语 言 编 写 的 程

14、序 可 移 植 性 好 。lC的 编 译 系 统 简 洁 , 很 容 易 移 植 到 新 系 统l在 新 系 统 上 运 行 时 , 可 直 接 编 译 “ 标 准 链 接库 ” 中 的 大 部 分 功 能 , 不 需 要 修 改 源 代 码l几 乎 所 有 计 算 机 系 统 都 可 以 使 用 C语 言 1.3 C语 言 的 发 展 及 其 特 点C语 言 主 要 特 点 :u生 成 目 标 代 码 质 量 高 , 程 序 执 行 效 率 高 。 1.4最 简 单 的 C语 言 程 序1.4.1 最 简 单 的 C语 言 程 序 举 例1.4.2 C语 言 程 序 的 结 构 1.4.1

15、最 简 单 的 C语 言 程 序 举 例例 1.1 要 求 在 屏 幕 上 输 出 以 下 一 行 信 息 。 This is a C program.解 题 思 路 : 在 主 函 数 中 用 printf函 数 原 样 输 出 以上 文 字 。 1.4.1 最 简 单 的 C语 言 程 序 举 例#include int main( ) printf (”This is a C program.n”); return 0; 函 数 的 名 字 , 表 示 主 函 数C程 序 必 须 有 一 个 main 函 数 1.4.1 最 简 单 的 C语 言 程 序 举 例#include int

16、main( ) printf (”This is a C program.n”); return 0; 主 函 数 类 型 1.4.1 最 简 单 的 C语 言 程 序 举 例#include int main( ) printf (”This is a C program.n”); return 0; 函 数 体 1.4.1 最 简 单 的 C语 言 程 序 举 例#include int main( ) printf (”This is a C program.n”); return 0; 输 出 函 数 输 出 语 句 1.4.1 最 简 单 的 C语 言 程 序 举 例#include

17、 int main( ) printf (”This is a C program.n”); return 0; 输 出 语 句 1.4.1 最 简 单 的 C语 言 程 序 举 例#include int main( ) printf (”This is a C program.n”); return 0; 换 行 符 1.4.1 最 简 单 的 C语 言 程 序 举 例#include int main( ) printf (”This is a C program.n”); return 0; 当 main函 数 执 行 结 束 前将 整 数 0作 为 函 数 值 1.4.1 最 简 单

18、 的 C语 言 程 序 举 例#include int main( ) printf (”This is a C program.n”); return 0; 表 示 语 句 结 束用 到 函 数 库 中 的 输 入 输 出 函 数 时例 1.1 main( ) /*求 两 数 之 和 */ int a,b,sum; /*这 是 定 义 变 量 */ a=123;b=456; /*以 下 3行 为 C语 句 */ sum=a+b; printf(“sum is %dn”,sum);输 出 结 果 为 :sum is 579例 1.2 main( ) /*主 函 数 */int a,b,c; /

19、*声 明 部 分 , 定 义 变 量 */ scanf(“%d,%d”, /*输 入 变 量 a和 b的 值 */ c=max(a,b); /*调 用 max函 数 将 结 果 赋 给 c*/ printf(“max=%d”,c); /*输 出 c的 值 */int max(int x,int y) /*定 义 max函 数 , 函 数 值 为 整 型 , 形 式 参 数 x,y 为 整 型 */ int z; /*max函 数 中 的 声 明 部 分 , 定 义 本 函 数 中 用 到 的 变 量 z为 整 型 */ if(xy) z=x; else z=y; return(z); /*将

20、z的 值 返 回 , 通 过 max带 回 调 用 处 */ 程 序 运 行 情 况 如 下 : 8,5 max=8 1.4.2 C语 言 程 序 的 结 构C语 言 程 序 的 结 构 特 点 :1.一 个 程 序 由 一 个 或 多 个 源 程 序 文 件 组 成u小 程 序 往 往 只 包 括 一 个 源 程 序 文 件u例 1.1, 例 1.2只 有 一 个 函 数u例 1.3有 两 个 函 数只 包 括 一 个 源 程 序 文 件 C语 言 的 程 序 构 成 特 点2、 C语 言 是 由 许 多 函 数 组 成 的 , 一 个 C语 言 程 序至 少 包 含 一 个 main( )

21、函 数 , 因 此 , 函 数 是 C语言 程 序 的 基 本 单 位 。 函 数 有 系 统 提 供 的 库 函 数 和 用 户 自 定 义 的 函 数3、 一 个 函 数 由 两 部 分 组 成 : ( 1) 函 数 的 首 部 : 函 数 类 型 函 数 名 ( 参 数 1, 参 数 2.) ( 2) 函 数 体 : 声 明 部 分 ; 执 行 部 分 ; 4、 一 个 C程 序 总 是 从 main函 数 开 始 的 , 而 不 论main函 数 在 整 个 程 序 中 的 位 置 。5、 书 写 格 式 自 由 , 一 行 可 以 写 多 条 语 句 。6、 每 条 语 句 的 最

22、后 必 须 有 一 个 分 号 。7、 C语 言 本 身 没 有 输 入 输 出 语 句 。 C对 输 入 输 出 实行 “ 函 数 化 ” 。8、 /* */表 示 是 注 释 部 分 , 注 释 部 分 不 执 行 ,不 影 响 程 序 的 执 行 效 果 。C语 言 的 程 序 构 成 特 点 C语 言 的 程 序 构 成 特 点C语 言 允 许 用 两 种 注 释 方 式 :/: 单 行 注 释u可 单 独 占 一 行u可 出 现 在 一 行 中 其 他 内 容 的 右 侧/*/: 块 式 注 释u可 包 含 多 行 1.5 运 行 C程 序 的 步 骤 与 方 法1.上 机 输 入

23、和 编 辑 源 程 序 ( .c文 件 )2.对 源 程 序 进 行 编 译 ( .obj文 件 )3.进 行 连 接 处 理 ( .exe文 件 )4.运 行 可 执 行 程 序 , 得 到 运 行 结 果 The C Programming Language C程 序 的 上 机 步 骤Turbo C提 供 : 编 辑 、 编 译 、 连 接 、 调 试 、 运 行为 一 体 的 程 序 编 写 调 试 环 境 , 即 IDE(Integrated Development Inviroment)Compilera1.c a1.obj a1.exeLinker The C Programming Language 说 明 : 附 录 A中 有 Visual C+ 6.0中 编 辑 、 编译 、 连 接 和 运 行 C程 序 的 方 法 1.问 题 分 析2.设 计 算 法3.编 写 程 序4.对 源 程 序 进 行 编 辑 、 编 译 和 连 接5.运 行 程 序 , 分 析 结 果6.编 写 程 序 文 档1.6 程 序 设 计 的 任 务

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!