《C语言测试试题及答案》由会员分享,可在线阅读,更多相关《C语言测试试题及答案(99页珍藏版)》请在金锄头文库上搜索。
1、 C 语言程序设计详解 1C 语 言 程 序 C 语言程序设计详解 2第 一 章 C 语 言 程 序 设 计 初 步一 、 主 要 知 识 点(一 ) 程 序 设 计 语 言 的 发 展1、 机 器 语 言 2、 汇 编 语 言 3、 面 向 过 程 的 语 言 4、 面 向 对 象 的 程 序设 计 语 言(二 ) C 程 序 设 计 语 言 的 执 行 过 程1、 编 辑 2、 编 译 3、 连 接 4、 执 行(三 ) 用 库 函 数 组 装 C 程 序例 1: 计 算 2.1715 的 正 弦 值 。#include “math.h”main( )float a; /*定 义 a 为
2、实 型 变 量 */a=sin(2.1715); /*调 用 sin 函 数 */printf(“%fn”,a); /*调 用 printf 函 数 , 输 出 a 的 值 */程 序 详 解 :1、 在 本 例 中 用 到 的 sin 函 数 称 为 数 学 函 数 , 它 是 为 了 用 户 使 用 方 便 , 由 一 批 厂家 开 发 编 写 的 函 数 , 并 不 是 C 语 言 的 一 部 分 。 在 使 用 数 学 函 数 时 , 往 往 要 用 到 函 数执 行 时 所 需 的 一 些 信 息 ( 例 如 宏 定 义 ) , 这 些 信 息 包 含 在 “math.h”中 。 因
3、 此 在 程序 开 头 用 #include “math.h”将 有 关 的 标 头 文 件 包 括 到 程 序 中 。2、 一 个 C 语 言 源 程 序 文 件 由 一 个 或 多 个 函 数 组 成 , C 语 言 的 基 本 组 成 单 位 是函 数 。 一 个 完 整 的 C 语 言 程 序 有 且 只 有 一 个 称 为 主 函 数 的 main 函 数 , 程 序 总 是从 main 函 数 开 始 执 行 , 调 用 其 它 函 数 后 再 回 到 main 函 数 , 在 main 函 数 中 结 束整 个 程 序 的 运 行 。3、 main 是 函 数 名 称 , 没 有
4、 参 数 可 以 不 写 , 但 圆 括 号 不 能 省 略 , main( ) 后面 有 一 对 花 括 号 , 花 括 号 内 的 部 分 称 为 函 数 体 , main 函 数 可 以 在 程 序 的 任 意 位 置 。 C 语言程序设计详解 34、 C 规 定 每 个 语 句 以 分 号 ( ; ) 结 束 , 分 号 是 语 句 不 可 缺 少 的 组 成 部 分 , 每 行 中可 以 写 多 条 语 句 。5、 /*与 */之 间 为 注 释 信 息 , 对 程 序 运 行 结 果 不 发 生 影 响 , 也 不 被 编 译 , 注 释 说 明可 以 放 在 语 句 的 任 意
5、位 置 。6、 float a; 此 语 句 是 把 a 定 义 为 一 个 实 型 变 量 。7、 C 语 言 本 身 没 有 输 入 、 输 出 语 句 , 本 例 使 用 prinft 函 数 输 出 数 据 。 prinft函 数 的 括 号 内 包 括 两 部 分 内 容 : 双 引 号 内 的 部 分 、 双 引 号 外 的 部 分 。 双 引 号 内 的 部 分是 “格 式 字 符 串 ”, 用 于 指 定 输 出 双 引 号 外 的 变 量 的 打 印 格 式 。 此 例 中 双 引 号 中 有 一个 ”%f”, 它 是 输 出 一 个 保 留 小 数 点 后 6 位 数 字
6、的 格 式 字 符 , 小 数 点 前 的 位 数 不 指 定 。二 、 经 典 例 题 详 解例 2: 一 个 C 程 序 的 执 行 是 从 _。( A) 本 程 序 的 main 函 数 开 始 , 到 main 函 数 结 束( B) 本 程 序 文 件 的 第 一 个 函 数 开 始 , 到 本 程 序 文 件 的 最 后 一 个 函 数 结 束( C) 本 程 序 的 main 函 数 开 始 , 到 本 程 序 文 件 的 最 后 一 个 函 数 结 束( D) 本 程 序 文 件 的 第 一 个 函 数 开 始 , 到 本 程 序 main 函 数 结 束答 案 :C详 解 :
7、 一 个 C 语 言 源 程 序 文 件 由 一 个 或 多 个 函 数 组 成 。 一 个 完 整 的 C 语言 程 序 有 且 只 有 一 个 称 为 主 函 数 的 main 函 数 , 程 序 总 是 从 main 函 数 开 始 执 行 ,调 用 其 它 函 数 后 再 回 到 main 函 数 , 在 main 函 数 中 结 束 整 个 程 序 的 运 行 。例 3、 以 下 叙 述 不 正 确 的 是 _。( A) 一 个 C 源 程 序 可 由 一 个 或 多 个 函 数 组 成( B) 一 个 C 源 程 序 必 须 包 含 一 个 main 函 数( C) C 程 序 的
8、 基 本 组 成 单 位 是 函 数( D) 在 C 程 序 中 , 注 释 说 明 只 能 位 于 一 条 语 句 后 面答 案 : D详 解 : /*与 */之 间 为 注 释 信 息 , 对 程 序 运 行 结 果 不 发 生 影 响 , 也 不 被 编 译 , 注释 说 明 可 以 放 在 语 句 的 任 意 位 置 。三 、 习 题(一 ) 选 择 题 C 语言程序设计详解 41、 以 下 叙 述 正 确 的 是 _。( A) 在 C 程 序 中 , main 函 数 必 须 位 于 程 序 的 最 前 面( B) C 程 序 的 每 行 中 只 能 写 一 条 语 句( C) C
9、语 言 本 身 没 有 输 入 输 出 语 句( D) 在 对 一 个 C 程 序 进 行 编 译 的 过 程 中 , 可 发 现 注 释 中 的 拼 写 错 误2、 C 语 言 规 定 : 在 一 个 源 程 序 中 , main 函 数 的 位 置 _。( A) 必 须 在 最 开 始( B) 必 须 在 系 统 调 用 库 函 数 的 后 面( C) 可 以 任 意( D) 必 须 在 最 后3、 一 个 C 语 言 程 序 是 由 _。( A) 一 个 主 程 序 和 若 干 子 程 序 组 成( B) 函 数 组 成( C) 若 干 过 程 组 成( D) 若 干 子 程 序 组 成
10、(二 ) 填 空 题 :1、 一 个 C 源 程 序 中 至 少 包 括 一 个 _。2、 在 一 个 C 源 程 序 中 , 注 释 部 分 两 侧 的 分 界 符 分 别 为 _和_。第 二 章 数 据 描 述 与 基 本 操 作一 、 主 要 知 识 点(一 ) C 的 基 本 数 据 类 型整 型基 本 类 型 字 符 型实 型 ( 浮 点 型 ) 单 精 度 型枚 举 类 型 双 精 度 型数 据 类 型 构 造 类 型 C 语言程序设计详解 5指 针 类 型空 类 型(二 ) 常 量 和 符 号 常 量1、 常 量 定 义 : 在 程 序 运 行 过 程 中 , 其 值 不 能 被
11、 改 变 的 量 称 为 常 量 。 常 量 常 区 分 不同 的 类 型 , 如 12、 0、 -3 为 整 型 常 量 , a、 D为 字 符 常 量 。2、 符 号 常 量 : 用 一 个 标 识 符 代 表 一 个 常 量 的 , 称 为 符 号 常 量 , 即 标 识 符 形 式 的 常量 。 常 量 不 同 于 变 量 , 它 的 值 在 作 用 域 内 不 能 改 变 , 也 不 能 再 被 赋 值 。例 1: 已 知 商 品 的 单 价 及 数 量 求 商 品 的 总 价 值 。#define PRICE 30main( )int num,total; num=10;total
12、=num*PRICE;printf(“total=%d”,total);输 出 结 果 : total=300程 序 详 解 :1、 程 序 中 用 #define 命 令 行 定 义 PRICE 代 表 常 量 30, 此 后 凡 在 此 文 件 中 出 现的 PRICE 都 代 表 30,可 以 和 常 量 一 样 进 行 运 算 。2、 符 号 常 量 不 同 于 变 量 , 它 的 值 在 其 作 用 域 内 不 能 改 变 , 也 不 能 再 被 赋 值 。 如 再用 以 下 赋 值 语 句 给 PRICE 赋 值 : PRICE=40;是 错 误 的 。(三 ) 变 量1、 变 量
13、 定 义 : 其 值 可 以 改 变 的 量 称 为 变 量 。2、 标 识 符 的 命 名 规 范和 其 它 高 级 语 言 一 样 , 用 来 标 识 变 量 名 、 符 号 常 量 名 、 函 数 名 、 数 组 名 、 类 型 名 、文 件 名 的 有 效 字 符 序 列 称 为 标 识 符 , 语 言 中 的 标 识 符 命 名 规 范 为 : 变 量 名 只 能 由 字 母 、 数 字 和 下 划 线 三 种 字 符 组 成 , 且 第 一 个 字 符 必 须 为 字 母 或下 划 表 。 C 语 言 中 标 识 符 的 长 度 ( 字 符 个 数 ) 无 统 一 规 定 , 随
14、系 统 而 不 同 。 许 多 系 统 C 语言程序设计详解 6( 如 IBM PC 的 MS C) 取 个 字 符 , 假 如 程 序 中 出 现 的 变 量 名 长 度 大 于 8 个 字符 , 则 只 有 前 面 个 字 符 有 效 , 后 面 的 不 被 识 别 。 语 言 有 32 个 关 键 字 ( 例 如 if、 else、 while) 它 们 已 有 专 门 含 义 , 不 应 用采 用 与 它 们 同 名 的 变 量 名 。 C 语 言 将 大 写 字 母 和 小 写 字 母 认 为 是 两 个 不 同 字 。例 2: 在 下 列 符 号 中 , 可 以 选 用 哪 些 作
15、 变 量 名 ? 哪 些 不 可 以 ? a3B 3aB +a -b *x $ _b5_ if next_ day e_2 OK? Integer MAXNUMBER i*j答 案 : _b5_ a3B next_ day e_2 MAXNUMBER 可 作 变 量 名 , 其 它 的作 变 量 名 不 可 以 。详 解 : MAXNUMBER 可 作 变 量 名 。 习 惯 上 符 号 常 量 名 用 大 写 , 变 量 名 用 小 写 以 示 区别 , 但 大 写 字 母 作 变 量 名 并 无 错 误 。 if、 integer 属 于 保 留 字 , 保 留 字 不 可 作 变 量 名 。 +a -b *x $ OK? i*j 不 可 作 变 量 名 , 因 为 变 量 名 只 能 由 字 母 、 数字 和 下 划 线 三 种 字 符 组 成 。