c语言考题第一套..pdf

上传人:weil****i173 文档编号:129077779 上传时间:2020-04-22 格式:PDF 页数:11 大小:50.80KB
返回 下载 相关 举报
c语言考题第一套..pdf_第1页
第1页 / 共11页
c语言考题第一套..pdf_第2页
第2页 / 共11页
c语言考题第一套..pdf_第3页
第3页 / 共11页
亲,该文档总共11页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《c语言考题第一套..pdf》由会员分享,可在线阅读,更多相关《c语言考题第一套..pdf(11页珍藏版)》请在金锄头文库上搜索。

1、1 程序流程图中带有箭头的线段表示的是 A 图元关系 B 数据流 C 控制流 D 调用关系 参考答案 C 解析 在数据流图中 用标有名字的箭头表示数据流 在程序流程图中 用标有名字的箭头 表示控制流 所以选择C 2 结构化程序设计的基本原则不包括 A 多态性 B 自顶向下 C 模块化 D 逐步求精 参考答案 A 解析 结构化程序设计的思想包括 自顶向下 逐步求精 模块化 限制使用goto语句 所 以选择 A 3 软件设计中模块划分应遵循的准则是 A 低内聚低耦合 B 高内聚低耦合 C 低内聚高耦合 D 高内聚高耦合 参考答案 B 解析 软件设计中模块划分应遵循的准则是高内聚低偶合 模块大小规模

2、适当 模块的依赖 关系适当等 模块的划分应遵循一定的要求 以保证模块划分合理 并进一步保证以此为依据 开发出的软件系统可靠性强 易于理解和维护 模块之间的耦合应尽可能的低 模块的内聚度 应尽可能的高 4 在软件开发中 需求分析阶段产生的主要文档是 A 可行性分析报告 B 软件需求规格说明书 C 概要设计说明书 D 集成测试计划 参考答案 B 解析 A 错误 可行性分析阶段产生可行性分析报告 C 错误 概要设计说明书是总体设计 阶段产生的文档 D 错误 集成测试计划是在概要设计阶段编写的文档 B 正确 需求规格说 明书是后续工作如设计 编码等需要的重要参考文档 5 算法的有穷性是指 A 算法程序

3、的运行时间是有限的 B 算法程序所处理的数据量是有限的 C 算法程序的长度是有限的 D 算法只能被有限的用户使用 参考答案 A 解析 算法原则上能够精确地运行 而且人们用笔和纸做有限次运算后即可完成 有穷性是 指算法程序的运行时间是有限的 6 对长度为 n的线性表排序 在最坏情况下 比较次数不是n n 1 2的排序方法是 A 快速排序 B 冒泡排序 C 直接插入排序 D 堆排序 参考答案 D 解析 除了堆排序算法的比较次数是 其他的都是n n 1 2 7 下列关于栈的叙述正确的是 A 栈按 先进先出 组织数据 B 栈按 先进后出 组织数据 C 只能在栈底插入数据 D 不能删除数据 解析 栈是按

4、 先进后出 的原则组织数据的 数据的插入和删除都在栈顶进行操作 8 在数据库设计中 将E R图转换成关系数据模型的过程属于 A 需求分析阶段 B 概念设计阶段 C 逻辑设计阶段 D 物理设计阶段 解析 E R图转换成关系模型数据则是把图形分析出来的联系反映到数据库中 即设计出表 所以属于逻辑设计阶段 9 有三个关系 R S和T如下 由关系 R和S通过运算得到关系T 则所使用的运算为 A 并 B 自然连接 C 笛卡尔积 D 交 解析 自然连接是一种特殊的等值连接 它要求两个关系中进行比较的分量必须是相同的属 性组 并且在结果中把重复的属性列去掉 所以B 错误 笛卡尔积是用R集合中元素为第一元 素

5、 S集合中元素为第二元素构成的有序对 所以C 错误 根据关系T可以很明显的看出是从关 系R与关系 S中取得相同的关系组所以取得是交运算 选择D 10 设有表示学生选课的三张表 学生S 学号 姓名 性别 年龄 身份证号 课程 C 课号 课名 选课 SC 学号 课号 成绩 则表 SC的关键字 键或码 为 A 课号 成绩 B 学号 成绩 C 学号 课号 D 学号 姓名 成绩 解析 学号是学生表S的主键 课号是课程表C的主键 所以选课表SC的关键字就应该是与前 两个表能够直接联系且能唯一定义的学号和课号 所以选择C 11 以下叙述中错误的是 A C语言中的每条可执行语句和非执行语句最终都将被转换成二进

6、制的机器指令 B C程序经过编译 连接步骤之后才能形成一个真正可执行的二进制机器指令文件 C 用C语言编写的程序称为源程序 它以ASCII 代码形式存放在一个文本文件中 D C语言源程序经编译后生成后缀为 obj的目标程序 解析 C语言中的非执行语句不会被编译 不会生成二进制的机器指令 所以A 错误 由 C语 言构成的指令序列称C源程序 C源程序经过 C语言编译程序编译之后生成一个后缀为 OBJ的二 进制文件 称为目标文件 最后要由 连接程序 把此 OBJ文件与 C语言提供的各种库函数连接起 来生成一个后缀为 EXE的可执行文件 12 以下选项中 合法的一组C语言数值常量是 A 12 0Xa2

7、34 5e0 B 028 5e 3 0 xf C 1774e1 50abc D 0 x8A10 0003 e5 解析 C语言中八进制整型常量的开头是数字0 十六进制整型常量的开头数字是0 x C语言 中的实型常量有两种表示形式 小数形式 小数形式表示的实型常量必须要有小数点 指数形 式 以 e 或 E 后跟一个整数来表示以10为底数的幂数 且规定字母e或E之前必须要有数字 且e或E后面的指数必须为整数 B 选项中028错误 八进制中没有数字8 C 选项中 4e1 5中e后 面的指数不是整数 D 选项中 3 e5小数点后面缺少数字 13 以下选项中不合法的标识符是 A a B FOR C pri

8、nt D 00 解析 C语言中标识符由字母 下划线 数字组成 且开头必须是字母或下划线 另外 关 键字不能作为标识符 因为C语言中区分大小写 所以B 选项中的 FOR 可以作为标识符来用 A 选项中含有非法字符 所以选择 A 14 若有代数式 其中 e仅代表自然对数的底数 不是变量 则以下能够正确表示该代数式 的C语言表达式是 A sqrt fabs pow n x exp x B sqrt fabs pow n x pow x e C sqrt abs n x e x D sqrt fabs pow x n exp x 解析 B 选项中函数 pow x e 错误应该直接使用exp x 函数

9、C 选项中函数 abs n x e x 错 误 应该使用 fabs 返回浮点数的绝对值 D 选项中 pow x n 参数顺序错误 15 若有定义 double a 22 int i 0 k 18 则不符合 C语言规定的赋值语句是 A i a k i k B i a 11 C a a i D i a 解析 取模运算符 二元运算符 具有左结合性 参与运算的量均为整型 选项 B中的 a 变量是 double实型 所以 B 不符合规定 16 有以下程序 include main int s t A 10 double B 6 s sizeof A t sizeof B printf d d n s t

10、 在VC6 0平台上编译运行 程序运行后的输出结果是 A 10 6 B 4 4 C 2 4 D 4 8 解析 C语言中利用 sizeof 函数判断数据类型长度 在VC6 0 平台中 整型 int占有 4个字节 double型数据占有 8个字节 17 有以下程序 include main char a b c d scanf c c a b c getchar d getchar printf c c c c n a b c d 当执行程序时 按下列方式输入数据 从第 1列开始 代表回车 注意 回车也是一个 字符 12 34 则输出结果是 A 12 34 B 12 C 1234 D 12 3 解

11、析 按照从键盘输入的数据可以判断字符1给了变量 a 字符 2给了变量 b 字符 即回车 给了变量 c 字符 3给了变量 d 所以打印输出的结果为D 选项 18 下关于逻辑运算符两侧运算对象的叙述中正确的是 A 可以是任意合法的表达式 B 只能是整数 0或非 0整数 C 可以是结构体类型的数据 D 只能是整数 0或1 解析 C语言的逻辑运算符比较特别 它的操作数没有明确的数据类型 可以是任意合法的 表达式 所以选择A 19 有以下程序 include main int a 0 b 0 c 0 d 0 if a 1 b 1 c 2 else d 3 printf d d d d n a b c d

12、 程序输出 A 1 1 2 0 B 0 0 0 3 C 编译有错 D 0 1 2 0 解析 本题中 if a 1 b 1 与 else d 3 之间多了语句c 2 所以会出现else语句的位置错 误的编译失败提示 20 有以下程序 include main int x 1 y 0 a 0 b 0 switch x case 1 switch y case 0 a break case 1 b break case 2 a b break case 3 a b printf a d b d n a b 程序的运行结果是 A a 2 b 2 B a 2 b 1 C a 1 b 1 D a 1 b

13、0 解析 case常量表达式只是起语句标号作用 并不是该处进行条件判断 在执行 switch语句时 根据 switch的表达式 找到与之匹配的case语句 就从此case子句执行下去 不在进行判断 直 到碰到 break或函数结束为止 所以执行内层switch y 时只执行了 a 此时 a的值为 1 然后执 行外层 case 2语句的 a b a为 2 b为1 所以结果为B 21 以下程序段中的变量已正确定义 for i 0 i 4 i i for k 1 k 3 k printf 程序段的输出结果是 A B C D 解析 由于内层循环for k 1 k 3 k 后面直接跟了空语句 所以在循环

14、内部 什么操作也不做 跳出外层循环后执行打印语句 所以打印了一个 选择 C 22 有以下程序段 include int i n for i 0 i 8 i n rand 5 switch n case 1 case 3 printf d n n break case 2 case 4 printf d n n continue case 0 exit 0 printf d n n 以下关于程序段执行情况的叙述 正确的是 A for循环语句固定执行8次 B 当产生的随机数n为4时结束循环操作 C 当产生的随机数n为1和2时不做任何操作 D 当产生的随机数n为0时结束程序运行 解析 case常量表

15、达式只是起语句标号作用 并不是该处进行条件判断 在执行 switch语句时 根据 switch的表达式 找到与之匹配的case语句 就从此case子句执行下去 不再进行判断 直 到碰到 break或函数结束为止 简单的说break是结束整个循环体 而continue是结束单次循环 B 选项中当产生的随机数n为4时要执行打印操作 C 选项中当产生的随机数为1和2时分别执行 case3与case4后面语句的内容 由于存在break语句所以 for循环不是固定执行8次 执行次数与产 生的随机数 n有关系 23 有以下程序 include int f int x main int n 1 m m f

16、f f n printf d n m int f int x return x 2 程序运行后的输出结果是 A 8 B 2 C 4 D 1 解析 第一次调用 m f f f 1 第二次为 m f f 2 第三次为 m f 4 即返回值为8 24 以下叙述中错误的是 A 可以给指针变量赋一个整数作为地址值 B 函数可以返回地址值 C 改变函数形参的值 不会改变对应实参的值 D 当在程序的开头包含头文件stdio h时 可以给指针变量赋NULL 解析 不能将一个整数直接赋给指针变量作为地址 所以A 是错误的 函数的返回值可以是 地址 即指针 函数调用中形参值的变化不会传递给实参 25 设已有定义 float x 则以下对指针变量p进行定义且赋初值的语句中正确的是 A int p float x B float p x C float p x D float p 1024 解析 指针是用来存放地址的变量 用 类型名 指针变量名 的形式定义 赋值时应将某个 变量地址即 x 赋给指针变量 所以选择B 26 以下数组定义中错误的是 A int x 2 3 1 2 3 4 5 6 B int x 3

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 其它考试类文档

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