程序设计基础-第二章-廉静如-第一次.pptx

上传人:max****ui 文档编号:20791321 上传时间:2021-04-18 格式:PPTX 页数:30 大小:1.93MB
返回 下载 相关 举报
程序设计基础-第二章-廉静如-第一次.pptx_第1页
第1页 / 共30页
程序设计基础-第二章-廉静如-第一次.pptx_第2页
第2页 / 共30页
程序设计基础-第二章-廉静如-第一次.pptx_第3页
第3页 / 共30页
点击查看更多>>
资源描述
第 二 章 C+简 单 程 序 设 计主 讲 人 : 廉 静 如山 西 农 业 大 学软 件 学 院 2015/10/13 C+语 言 概 述2.1 基 本 数 据 类 型 和 表 达 式2.2 数 据 的 输 入 与 输 出2.3 算 法 的 基 本 控 制 结 构2.4 目 录自 定 义 数 据 类 型2.5 深 度 探 索2.6 小 结2.7 C+语 言 概 述2.12.1.1 C+的 产 生C+是 从 C语 言 发 展 演 变 而 来 的 。 C+不 是 第 一 个 面 向 对 象 的语 言 , 但 它 是 第 一 个 流 行 起 来 的 面 向 对 象 的 语 言 。引 入 了 类 的 机 制 , 最 初 的 C+被 称 为 “ 带 类 的 C”。1983年 正 式 取 名 为 C+从 1989年 开 始 C+语 言 的 标 准 化 工 作于 1994年 制 定 了 ANSI C+标 准 草 案于 1998年 11月 被 国 际 标 准 化 组 织 ( ISO) 批 准 为 国 际 标 准 , 成为 目 前 的 C+ C+语 言 概 述2.12.1.2 C+的 特 点支 持 面 向 对 象 的 方 法兼 容 C它 保 持 了 C的 简 洁 、 高 效 和 接 近 汇 编 语 言 等 特 点对 C的 类 型 系 统 进 行 了 改 革 和 扩 充C+也 支 持 面 向 过 程 的 程 序 设 计 , 不 是 一 个 纯 正 的面 向 对 象 的 语 言 C+语 言 概 述2.12.1.3 C+程 序 实 例 例 2-1/2_1.cpp#include using namespace std;int main( ) cout Hello! endl;cout Welcome to C+! endl;return 0;运 行 结 果 :Hello!Welcome to C+! C+语 言 概 述2.1主 函 数 main( )int main( ) return 0 ; main()是 主 函 数 。 在 C+程 序 中 , 必 须 有 且 仅 有 一 个 名 为 main的函 数 , 它 表 示 程 序 执 行 的 开 始 。定 义 函 数 必 须 指 定 4个 元 素 : 返 回 类 型 、 函 数 名 、 圆 括 号 内 的 形参 表 ( 可 能 为 空 ) 和 函 数 体 。函 数 体 是 函 数 定 义 的 最 后 部 分 , 是 以 花 括 号 开 始 并 以 花 括 号 结 束的 语 句 块 。主 函 数 的 返 回 类 型 : main函 数 的 返 回 值 必 须 是 int型 , 该 类 型 表示 整 数 。 返 回 值 类 型 必 须 和 函 数 的 返 回 类 型 相 同 。 main函 数 的 返 回 值 0表 示 main函 数 成 功 执 行 完 毕 。 同 时 , 运 行 main函 数 没 有 返回 值 也 可 结 束 。 C+语 言 概 述2.1程 序 由 语 句 组 成 , 每 条 语 句 由 分 号 (;)作 为 结 束 符 。输 入 /输 出 C+并 没 有 直 接 定 义 进 行 输 入 或 者 输 出 (IO)的 任 何 语 句 , 这种 功 能 是 由 标 准 库 提 供 的 。 本 书 大 多 数 例 子 都 使 用 了 处 理格 式 化 输 入 和 输 出 的 iostream库 。 处 理 输 入 时 使 用 命 名 为 cin的 标 准 输 入 ; 处 理 输 出 时 使 用 的命 名 为 cout的 标 准 输 出 。 输 入 操 作 符 : 输 入 左 操 作 数 的 值 ; cout 指 把 信 息 从 程 序 空 间 流 动 到 显 示 器 上 。 endl操 纵 符 , 写 到 输 出 流 时 的 作 用 是 输 出 换 行 。 C+语 言 概 述2.1预 处 理 指 令 #include 告 诉 编 译 器 要 使 用 iostream库 。 尖 括 号 里 的 名 字 iostream是 个 头 文 件 。 #include指 示 必 须 单 独 写 成 一 行 头 文 件 名 和 #include 必须 在 同 一 行 。 #include指 示 应 出 现 在 任 何 函 数 的 外 部 。 并 且 习 惯 上 , 程 序所 有 #include 指 示 都 在 文 件 开 头 部 分 出 现 。 using namespace std; 针 对 命 名 空 间 的 指 令 标 准 库 定 义 的 名 字 是 定 义 在 命 名 空 间 中 的 。 使 用 命 名 空 间 ,程 序 员 可 以 避 免 由 于 无 意 中 使 用 了 与 库 中 所 定 义 名 字 相 同 的名 字 而 引 致 冲 突 。 关 于 命 名 空 间 的 概 念 将 在 第 5章 介 绍 。 程 序 中 出 现 的 中 文 字 必 须 在 “ ” 中 。 C+语 言 概 述2.12.1.4 C+字 符 集 字 符 集 是 构 成 C+语 言 的 基 本 元 素 。 用 C+语 言 编 写 程序 时 , 除 字 符 型 数 据 外 , 其 他 所 有 成 分 都 只 能 由 字 符 集 中的 字 符 构 成 。 C+语 言 的 字 符 集 由 下 述 字 符 构 成 。大 小 写 的 英 文 字 母 : A Z, a z数 字 字 符 : 0 9特 殊 字 符 :! # % . , : ? ( ) C+语 言 概 述2.12.1.5词 法 记 号 关 键 字 C+预 定 义 的 单 词 , 它 们 在 程 序 中 有 不 同 的 使 用 目 的 。表 1 关 键 字asm auto bool break case catch charclass const const_cast continue default delete dodouble dynamic-cast else enum explicit export externfalse float for friend goto if inlineint long mutable namespace new operator private protected public register reinterpret-cast return short signedsizeof static static_cast struct switch tempelate thisthrow true try typedef typeid typename unionunsigned using virtual void volatile wchar_t while C+语 言 概 述 2.1.5词 法 记 号2.1 标 识 符 程 序 员 声 明 的 单 词 , 它 命 名 程 序 正 文 中 的 一 些 实体 , 如 函 数 名 、 变 量 名 、 类 名 、 对 象 名 等 。 C+标 识 符 的 构 成 规 则以 大 写 字 母 、 小 写 字 母 或 下 划 线 (_)开 始 。可 以 由 以 大 写 字 母 、 小 写 字 母 、 下 划 线 (_)或 数 字 0 9组 成 。大 写 字 母 和 小 写 字 母 代 表 不 同 的 标 识 符 。不 能 是 C+关 键 字 。例 如 : Rectangle, Draw_line, Nol都 是 合 法 的 , 而 No.1, 1st则 是 不合 法 的 标 识 符 。 文 字 在 程 序 中 直 接 使 用 符 号 表 示 的 数 据 , 包 括 数 字 、 字 符 、 字 符 串和 布 尔 文 字 。 操 作 符 用 于 实 现 各 种 运 算 的 符 号 , 例 如 : +, -, *, /, 。 分 隔 符 用 于 分 隔 各 个 词 法 记 号 或 程 序 正 文 , C+分 隔 符 是 : ( ) , : ; 这 些 分 隔 符 不 表 示 任 何 实 际 操 作 , 仅 用 于 构 造 程 序 。 C+中 程 序 可 以 不 必 严 格 地 按 行 书 写 , 凡 是 可 以 出 现 空 格 的 地 方 , 都 可以 出 现 换 行 。 例 如 : int i; 与 int i; int i ; 等 价 。 C+语 言 概 述 2.1.5词 法 记 号2.1 C+语 言 概 述 2.1.5词 法 记 号2.1 空 白 符 空 格 、 制 表 符 ( TAB键 产 生 的 字 符 ) 、 垂 直制 表 符 、 换 行 符 、 回 车 符 和 注 释 的 总 称 。 空 白 符 用 于 指 示 词 法 记 号 的 开 始 和 结 束 位 置 , 但 除 了 这 一功 能 , 其 余 的 空 白 将 被 忽 略 。 注 释 在 程 序 中 的 作 用 是 对 程 序 进 行 注 解 和 说 明 , 以 便 于 阅读 。C+中 的 两 种 注 解 :1. “ /*” 和 “ */” 括 起 注 释 文 字 , 从 C语 言 中 继 承 过 来 的 , 称为 注 解 对 。 可 以 用 在 单 行 注 释 , 也 可 用 在 多 行 注 释 中 。2. “ /” : 从 “ /” 开 始 , 直 到 它 所 在 的 行 的 行 尾 , 所 有 的 字符 都 被 作 为 注 释 处 理 。 这 种 注 解 形 式 一 般 用 于 半 行 或 者 单行 的 注 释 。 C+语 言 概 述 2.1.5词 法 记 号2.1# includeusing namespace std;int main() int score; /* 定 义 整 型 变 量 score*/ coutscore; / score表 示 学 生 的 分 数 if(score60) cout“不 及 格 ” endl; else cout“及 格 ” endl; return 0;u案 例 一 : 输 入 一 个 考 试 分 数 (百 分 制 ), 判 断 是 否 及 格 (if-else) C+语 言 概 述2.1 基 本 数 据 类 型 和 表 达 式2.2 数 据 的 输 入 与 输 出2.3 算 法 的 基 本 控 制 结 构2.4 目 录自 定 义 数 据 类 型2.5 深 度 探 索2.6 小 结2.7 基 本 数 据 类 型 和 表 达 式2.22.2.1 基 本 数 据 类 型 表 2 基 本 数 据 类 型 基 本 数 据 类 型 和 表 达 式2.2C+的 基 本 数 据 类 型 有 bool(布 尔 型 )、 char(字 符 型 )、 int(整 型)、 float(浮 点 型 , 表 示 实 数 )。除 了 bool型 外 , 主 要 分 为 两 大 类 : 整 数 和 浮 点 数 。布 尔 常 量 只 有 两 个 : ture(真 )和 false(假 )。 基 本 数 据 类 型 和 表 达 式2.2定 义 : 在 程 序 运 行 过 程 中 , 其 值 不 能 被 改 变 的 量 。例 如 : 12, 3.5, A也 可 以 用 一 个 标 识 符 代 表 一 个 常 量 例 如 : #define PRICE 30 #define命 令 行 定 义 PRICE代 表 常 量 30 #include int main( ) int num,total; num=10; total=num*PRICE; cout“total=”totalb 都 是 不 合 法 的 。变 量 声 明 语 句 的 形 式 为 : 数 据 类 型 变 量 名 1, 变 量 名 2, , 变 量 名 n; 例 如 int num, total; float v, r, h; u案 例 二 : 输 出1+2+3+100的 值 (while) # includeusing namespace std;int main() int i=1,sum=0; while(i=100) sum =+ i; i+; cout“sum=”sumendl; return 0;基 本 数 据 类 型 和 表 达 式2.2在 定 义 一 个 变 量 的 同 时 , 也 可 以 给 它 赋 初 值 。例 如 : int a=3; double f=3.56; 基 本 数 据 类 型 和 表 达 式2.22.2.3 变 量C+中 要 求 对 所 有 用 到 的 变 量 作 强 制 定 义 , 即 先 定 义 , 后 使 用 。凡 未 被 事 先 定 义 的 , 系 统 不 把 它 认 作 变 量 名 , 这 样 就 能 保 证 程 序中 变 量 名 使 用 得 正 确 。 例 如 : 如 果 在 声 明 部 分 有 语 句 : int student; 而 在 执 行 语 句 是 错 写 成 stadent。 Stadent=30;在 编 译 时 会 检 查 出stadent未 经 定 义 。每 个 变 量 被 指 定 为 一 个 确 定 类 型 , 在 编 译 时 就 能 为 其 分 配 相 应 的存 储 单 元 。 如 指 定 a、 b为 int型 , C+编 译 器 系 统 为 a、 b各 分 配 两 个 自 己 , 并 按 整 数 方 式 存 储 数 据 。 指 定 每 一 个 变 量 属 于 一 个 类 型 , 这 就 便 于 在 编 译 时 据 此 检 查程 序 中 要 求 对 该 变 量 进 行 的 运 算 是 否 合 法 。 例 如 : 整 型 变 量 a、b, 可 进 行 求 余 运 算 : a%b 得 到 a/b的 余 数 。 但 如 果 定 义 a、 b为 实 型 变 量 , 则 不 允 许 求 余运 算 。基 本 数 据 类 型 和 表 达 式2.22.2.3 变 量 基 本 数 据 类 型 和 表 达 式 -整 型 数 据2.2整 型 常 量 的 表 示 方 法 整 型 常 量 即 以 文 字 形 式 出 现 的 整 常 数 , 包 括 正 整 数 、 负 整 数和 零 。 在 C+语 言 中 , 整 常 数 可 以 用 以 下 三 种 形 式 表 示 。 十 进 制 形 式 : 若 干 个 09的 数 字 , 开 头 不 能 为 0。 如 123、 -456.7. 八 进 制 形 式 : 要 以 数 字 0开 头 , 若 干 个 07的 数 字 。 如 0123 十 六 进 制 形 式 : 以 0 x 开 头 , 若 干 个 09的 数 字 及 AF的 字 母( 大 小 写 均 可 ) .如 0 x123. 基 本 数 据 类 型 和 表 达 式 -整 型 数 据2.2整 型 变 量1. 整 型 数 据 在 内 存 中 的 存 放 形 式 数 据 在 内 存 中 是 以 二 进 制 形 式 存 放 的 。 如 果 定 义 一 个 整 型 变量 i: int i; / 定 义 为 整 型 变 量 i=10; /给 i赋 以 整 数 10 十 进 制 数 10的 二 进 制 形 式 为 1010, Visual C+6.0为 一 个 整型 变 量 在 内 存 中 分 配 4个 字 节 的 存 储 单 元 。 数 值 以 补 码 的 形 式 表 示 。 基 本 数 据 类 型 和 表 达 式 -整 型 数 据2.2整 型 变 量2. 整 型 变 量 的 分 类整 型 变 量 的 基 本 类 型 符 为 int。 可 以 根 据 数 值 的 范 围 将 变 量 定义 为 基 本 整 型 、 短 整 型 或 长 整 型 。在 int之 前 加 上 修 饰 符 short、 long、 signed、 unsigned, 有 六种 整 型 变 量 : (1) 有 符 号 基 本 整 型 , signed int (2) 无 符 号 基 本 整 型 , unsigned int (3) 有 符 号 短 整 型 , signed short int (4) 无 符 号 短 整 型 , unsigned short int (5)有 符 号 长 整 型 , signed long int (6)无 符 号 长 整 型 , unsigned long int 注 意 : 上 面 的 方 括 号 表 示 其 中 的 内 容 是 可 选 的 , 既 可 以 有 , 也可 以 没 有 。 基 本 数 据 类 型 和 表 达 式 -整 型 数 据2.2整 型 变 量2. 整 型 变 量 的 分 类如 果 不 指 定 unsigned或 指 定 signed, 则 存 储 单 元 中 最 高 位 代表 符 号 。如 果 指 定 unsigned, 为 无 符 号 型 , 存 储 单 元 中 全 部 二 进 位(bit)用 作 存 放 数 本 身 , 而 不 包 括 符 号 。 无 符 号 型 变 量 只 能 存放 不 带 符 号 的 整 数 , 如 123, 456等 , 而 不 能 存 放 负 数 。 一 个无 符 号 整 型 变 量 中 可 存 放 的 正 数 的 范 围 比 一 般 整 型 变 量 中 正数 的 范 围 扩 大 一 倍 。 例 如 : 定 义 a,b两 个 变 量 : int a; unsigned int b; 则 变 量 a的 数 值 范 围 为 -3276832767, 而 变 量 b的 数 值 范 围 为 065535. 基 本 数 据 类 型 和 表 达 式 -整 型 数 据2.2整 型 变 量2. 整 型 变 量 的 分 类C+中 没 有 具 体 规 定 以 上 各 类 数 据 所 占 的 内 存 的 字 节 数 , 只 要求 long型 数 据 长 度 不 短 于 int型 , short型 不 长 于 int型 。表 3 整 数 类 型 的 有 关 数 据类型比特(位)数取值范围signed int 16 -2 15215-1Unsigned int 16 0216-1signed short int 16 -215215-1unsigned short int 16 0216-1Long int 32 -231231-1Unsigned long int 32 0232-1 基 本 数 据 类 型 和 表 达 式 -整 型 数 据2.2整 型 变 量3. 整 型 变 量 的 定 义 C+程 序 中 所 有 用 到 的 变 量 都 必 须 在 程 序 中 定 义 , 即 强 制 类 型 定 义 。 例 如 : int a, b; ( 指 定 变 量 a、 b为 整 型 ) unsigned short c, d; (指 定 变 量 c、 d为 无 符 号 短 整 型 )对 变 量 的 定 义 一 般 放 在 一 个 函 数 的 开 头 部 分 的 声 明 部 分 。 例 如 : #include int main ( ) int a, b, c, d; unsigned u; a=12; b=-24;u=10; c=a+u; d=b+u; cout“a+u=”cendl; cout“b+u=”dendl; return 0 ; 运 行 结 果 为 :a+u=22b+u= -14可 以 看 到 不 同 种 类 的 整 型数 据 可 以 进 行 算 术 运 算 。 基 本 数 据 类 型 和 表 达 式 -整 型 数 据2.2整 型 常 量 的 类 型 整 型 变 量 可 分 为 int、 short int、 long int、 和 unsigned int、unsigned short、 unsigned long等 类 别 , 那 么 常 量 是 否 也 有 这 些类 别 ? 在 将 一 个 整 型 常 量 赋 值 给 上 述 几 种 类 别 的 整 型 变 量 时 如何 做 到 类 型 匹 配 ?根 据 一 个 整 数 的 大 小 , 判 断 它 属 于 int、 long int、 或 者 short int的 范 围 , 然 后 将 其 值 赋 给 int、 long int或 者 short int类 型 的变 量 。 例 如 : 一 个 整 数 其 值 在 -3276832767范 围 内 , 认 为 它 是 int型, 它 可 以 赋 值 给 int型 和 long int型 变 量 。一 个 整 常 量 后 面 加 一 个 字 节 u或 者 U, 认 为 是 unsigned int常量 型 。在 一 个 整 常 量 后 面 加 一 个 字 母 l或 者 L, 则 认 为 是 long int型 常 量 。 LOGO
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


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

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


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