ImageVerifierCode 换一换
格式:DOC , 页数:23 ,大小:62.50KB ,
资源ID:498842      下载积分:2000 积分
快捷下载
登录下载
邮箱/手机:
温馨提示:
如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝扫码支付 微信扫码支付   
注意:如需开发票,请勿充值!
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【http://www.mydoc123.com/d-498842.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文([计算机类试卷]国家二级C语言机试(选择题)模拟试卷38及答案与解析.doc)为本站会员(ideacase155)主动上传,麦多课文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文库(发送邮件至master@mydoc123.com或直接QQ联系客服),我们立即给予删除!

[计算机类试卷]国家二级C语言机试(选择题)模拟试卷38及答案与解析.doc

1、国家二级 C语言机试(选择题)模拟试卷 38 及答案与解析 一、选择题 1 程序流程图中带有箭头的线段表示的是 ( )。 ( A)图元关系 ( B)数据流 ( C)控制流 ( D)调用关系 2 结构化程序设计的基本原则不包括 ( )。 ( A)多态性 ( B)自顶向下 ( C)模块化 ( D)逐步求精 3 软件设计中模块划分应遵循的准则是 ( )。 ( A)低内聚低耦合 ( B)高内聚低耦合 ( C)低内聚高耦合 ( D)高内聚高耦合 4 在软件开发中,需求分析阶段产生的主要文档是 ( )。 ( A)可行性分析报告 ( B)软件需求规格说明书 ( C)概要设计说明书 ( D)集成测试计划 5

2、算法的有穷性是指 ( )。 ( A)算法程序的运行时间是有限的 ( B)算法程序所处理的数据量是有限的 ( C)算法程序的长度是有限的 ( D)算法只能被有限的用户使用 6 对长度为 n的线性表排序,在最坏情况下,比较次数不是 n(n 1)/2的排序方法是 ( )。 ( A)快速排序 ( B)冒泡排序 ( C)直接插入排序 ( D)堆排序 7 下列关于栈的叙述正确的是 ( )。 ( A)栈按 “先进先出 ”组织数据 ( B)栈按 “先进后出 ”组织数据 ( C)只能在栈底插入数据 ( D)不能删除数据 8 在数据库设计中,将 E R图转换成关系数据模型的过程属于 ( )。 ( A)需求分析阶段

3、 ( B)概念设计阶段 ( C)逻辑设计阶段 ( D)物理设计阶段 9 有三个关系 R、 S和 T如下: 由关系 R和 S通过运算得到关系 T,则所使用的运算为 ( )。 ( A)并 ( B)自然连接 ( C)笛卡尔积 ( D)交 10 设有表示学生选课的三张表,学生 S(学号,姓名,性别,年龄,身份证号 ),课程 C(课号,课名 ),选课 SC(学号,课号,成绩 ),则表 SC的关键字 (键或码 )为( )。 ( A)课号,成绩 ( B)学号,成绩 ( C)学号,课号 ( D)学号,姓名,成绩 11 以下叙述中错误的是 ( )。 ( A) C语言中的每条可执行语句和非执行语句最终都将被转换成

4、二进制的机器指令 ( B) C程序经过编译、连接步骤之后才能形成一个真正可执行的二进制机器指令文件 ( C)用 C语言编写的程序称为源程序,它以 ASCII代码形式存放在一个文本文件中 ( D) C语言源程序经编译后生成后缀为 .obj的目标程序 12 以下选 项中,合法的一组 C语言数值常量是 ( )。 ( A) 12. 0Xa23 4.5e0 ( B) 028 .5e 3 0xf ( C) .177 4e1.5 0abc ( D) 0x8A 10,000 3.e5 13 以下选项中不合法的标识符是 ( )。 ( A) strcpy( a+1, b+2 ); puts( strcat( a,

5、 c+1 ) ); 程序运行后的输出结果是 ( A) a12xyz ( B) bc2yz ( C) a2yz ( D) 12yz 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; 16 有以下程序: #include main() int s, t, A 10; double B 6; s sizeof (A); t sizeof(B); printf(“%d, %dn“, s, t); 在 VC6.0平台上编译运

6、行,程序运行后的输出结果是 ( )。 ( A) 10,6 ( B) 4,4 ( C) 2,4 ( D) 4,8 17 有以下程序: #include main() char a, b, c, d; scanf(“%c%c“, 后, a变为 a2,执行完 strcat( a, c+1 )后, a变为 a2yz,所以答案为 C选项。 15 【正确答案】 B 【试题解析】 取模运算符 “%”,二元运算符,具有左结合性,参与运算的量均为整型。选项 B 中的 a变量是 double实型,所以 B)不符合规定。 16 【正确答案】 D 【试题解析】 C语言中利用 sizeof()函数判断数据类型长度,在

7、VC6.0平台中,整型 int占有 4个字节, double型数 据占有 8个字节。 17 【正确答案】 D 【试题解析】 按照从键盘输入的数据可以判断字符 1给了变量 a,字符 2给了变量 b,字符 即回车给了变量 c,字符 3给了变量 d。所以打印输出的结果为 D)选项。 18 【正确答案】 A 【试题解析】 C语言的逻辑运算符比较特别,它的操作数没有明确的数据类型,可以是任意合法的表达式,所以选择 A)。 19 【正确答案】 C 【试题解析】 本题中 if(a 1)b 1;与 else d 3; 之间多了语句 c 2;所以会出现 else语句的位置错误的编译 失败提示。 20 【正确答案

8、】 B 【试题解析】 case常量表达式只是起语句标号作用,并不是该处进行条件判断。在执行 switch 语句时,根据 switch 的表达式,找到与之匹配的 case语句,就从此case子句执行下去,不在进行判断,直到碰到 break 或函数结束为止。所以执行内层 switch(y)时只执行了 a,此时 a的值为 1。然后执行外层 case 2语句的 a; b; a为 2, b 为 1。所以结果为 B)。 21 【正确答案】 C 【试题解析】 由于内层循环 for( k 1; k3; k )后面直接跟了空语句“; “所以在循环内部什么操作也不做,跳出外层循环后执行打印语句,所以打印了一个 “

9、*“,选择 C)。 22 【正确答案】 D 【试题解析】 case常量表达式只是起语句标号作用,并不是该处进行条件判断。在执行 switch 语句时,根据 switch 的表达式,找到与之匹配的 case语句,就从此case子句执行下去,不再进行判断,直到碰到 break 或函数结束为止。简单的说break 是结束整个循环体,而 continue是结束单次循环。 B)选项中当产生的随机数n 为 4时要执行打印操作。 C)选项中当产生的随机数为 1和 2时分别执行 case3与case4后面语句的内容。由于存在 break 语句所以 for循环不是固定执行 8次,执行次数与产生的随机数 n 有关

10、系。 23 【正确答案】 A 【试题解析】 第一次调用 m f(f(f(1),第二次为 m f(f(2),第三次为 mf(4),即返回值为 8。 24 【正确答案】 A 【试题解析】 不能将一个整数直接赋给指针变量作为地址,所以 A)是错误的。函数的返回值可以是地址,即指针。函数调用中形参值的变化不会传递给实参。 25 【正确答 案】 B 【试题解析】 指针是用来存放地址的变量,用 (类型名 *指针变量名 )的形式定义。赋值时应将某个变量地址即 &x 赋给指针变量,所以选择 B)。 26 【正确答案】 D 【试题解析】 D)选项中 x23定义的是一个两行三列的二维数组,而在给数组元素赋值时却赋

11、成了三行,所以错误。 27 【正确答案】 A 【试题解析】 本题中的函数 fun()的功能是将数组 k 中前 5个元素倒序,所以返回后数组 k中的元素排列是 5,4,3,2,1,6,7,8,9,10。所以打印输出 k2到 k7元素的值,即 321678,所以选择 A。 28 【正确答案】 A 【试题解析】 本题中由 fun函数可知, b0 a00 a03 1 4 3,b1 a11 12 6 7 1, b2 a22 21 11 10 1, b3a33 31 16 13 3。所以主函数中打印 y数组元素的值为 A)选项。 29 【正确答案】 C 【试题解析】 字符串的输入不能使用 scanf(“%

12、s“, s);而应该使用 gets(s)。 30 【正确答案】 A 【试题解析】 根据题目中的定义可以知道 sizeof(p),计算的是数组 p 中所有元素所占用的字节数,而不是 char型数据所占字节数。 31 【正确答案】 A 【试题解析】 p 是指向二维字符数组第二行 One*Dream!的数组指针,所以长度是 10,打印输出的也是该字符串。 32 【正确答案】 B 【试题解析】 本题中遇到 “字符循环结束,所以只统计 “之前的数字字符,所以为 3。 33 【正确答案】 A 【试题解析】 声明静态局部变量:函数调用结束后 ,其占用的存储单元不释放,在下次该函数调用时,该变量保留上一次函数

13、调用结束时的值。本题子函数 fun中的变量 i和 m均为静态局部变量。所以第一次调用 fun 函数,返回 m的值为5,第二次再调用 fun函数时, i的值为 3, m的值已经是 5了,所以执行 i m 1, i的值变为 9, m i x y 9 1 1 11。 34 【正确答案】 C 【试题解析】 auto:函数中的局部变量,动态地分配存储空间,数据存储在动态存储区中,在调用该函数时系统会给它们分配存储空间,在函数调用结束时就自动释放这些存储空间。 register:为了提高效率, C语言允许将局部变量的值放在CPU中的寄存器中,这种变量叫 “寄存器变量 ”,只有局部自动变量和形式参数可以作为

14、寄存器变量。 extern:外部变量 (即全局变量 )是在函数的外部定义的,它的作用域为从变量定义处开始,到本程序文件的末尾。如果外部变量不在文件的开头定义,其有效的作用范围只限于定义处到文件终了。 static:静态局部变量属于静态存储类别,在静态存储区内分配存储单元。在程序整个运行期间都不释放。 35 【正确答案】 A 【试题解析】 A)选项 struct ord int x; int y; int z; struct ord a;错误,不能在定义结构体的同时,又用结构体类型名定义变量。应该写成 B)选项或者 D)选项的格式。 36 【正确答案】 B 【试题解析】 结构体变量可以作为函数的

15、参数和返回值。作为函数的实参时,可以实现函数的传值调用。当使用结构体变量作为函数的形参时,实参也应该是结构体变量名以实现传值调用,实参将拷贝副本给形参,在被调用函数中改变形参值对于调用函数中的实参没有影响。所以选择 B)。 37 【正确答案】 A 【试题解析】 预处 理命令是以 “#“号开头的命令,它们不是 C语言的可执行命令,这些命令应该在函数之外书写,一般在源文件的最前面书写,但不是必须在起始位置书写,所以 B), C)错误。 C)语言的预处理能够实现宏定义和条件编译等功能,所以 D)错误。 38 【正确答案】 C 【试题解析】 malloc(sizeof(int)的作用是开辟一个长度为

16、sizeof(int)存储空间,并通过强制类型转换 (int*)将此存储空间的地址赋给了一个整型的指针变量 p。然后执行语句 *p n,使得 *p 的值为 10,并通过 return返回此值,即 a的值为 10。然后在主函数中输出 a fun(10) 10 10 20。 39 【正确答案】 B 【试题解析】 无符号整型变量 a的值为 8,二进制表示为 00001000,右移 3位后为 00000001,即十进制的 1,所以输出 1。 40 【正确答案】 D 【试题解析】 fread(void *buffer, size t size, size t count, FILE *stream);功能是从一个文件流中读数据,读取 count个元素,每个元素 size字节,如果调用成功返回 count。 buffer :用于接收数据的内存地址,大小至少是 size*count 字节; size :单个元素的大小,单位是字节; count :元素的个数,每个元素是 size字节; stream :输入流。

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1