首页 - 网校 - 万题库 - 美好明天 - 直播 - 导航
您现在的位置: 考试吧 > 计算机等级考试 > 计算机二级考试 > C语言 > 模拟试题 > 正文

2018年3月全国计算机二级C语言考试强化模拟题(1)

来源:考试吧 2018-02-26 14:33:27 要考试,上考试吧! 万题库
“2018年3月全国计算机二级C语言考试强化模拟题(1)”供考生参考。更多计算机等级考试内容请访问考试吧计算机等级考试网。

  点击查看:2018年3月全国计算机二级C语言考试强化模拟题汇总

  1、程序流程图中带有箭头的线段表示的是(  )。

  A.图元关系

  B.数据流

  C.控制流

  D.调用关系

  参考答案:C

  参考解析:在数据流图中,用标有名字的箭头表示数据流。在程序流程图中,用标有名字的箭头表示控制流。所以选择C。

  2、有以下程序:

2018年3月全国计算机二级C语言考试强化模拟题(1)



  程序运行后的输出结果是(  )。

  A.16

  B.1

  C.32

  D.0

  参考答案:B

  参考解析:无符号整型变量a的值为8,二进制表示为00001000,右移3位舌为00000001,即十进制的1,所以输出1。

  3、若有定义:float x=1.5;int a=1,b=3,c=2;则正确的switch语句是(  )。

  

2018年3月全国计算机二级C语言考试强化模拟题(1)

  参考答案:A

  参考解析: B选项中switch((int)x);语句中不应该有最后的分号。switch(expr1),中的expr1不能用浮点类型或long类型,也不能为一个字符串,所以C错误。cas后面常量表达式的类型必须与switch后面表达式的类型一致,所以D错误。

  4、结构化程序设计的基本原则不包括(  )。

  A.多态性

  B.自顶向下

  C.模块化

  D.逐步求精

  参考答案:A

  参考解析: 结构化程序设计的思想包括:自顶向下、逐步求精、模块化、限制使用goto语句,所以选择A。

  5、有以下函数:

2018年3月全国计算机二级C语言考试强化模拟题(1)


  函数的功能是(  )。

  A.将y所指字符串赋给x所指存储空间

  B.查找x和y所指字符串中是否有‘\0’

  C.统计x和y所指字符串中最前面连续相同的字符个数

  D.统计x和y所指字符串中相同的字符个数

  参考答案:C

  参考解析: 本题中由循环条件可知遇到‘\0’或x与y所指的字符的值不等中的一个条件时就结束。所以功能是统计x和y所指字符串中最前面连续相同的字符个数。

  6、下面结构体的定义语句中,错误的是(  )。

  A.struct ord{int x;int y;int z;}struct ord a;

  B.struct ord{int x;int y;int z;};struct ord a;

  C.struct ord{int x;int y;int z;}a;

  D.struct{int x;int y;int z;}a;

  参考答案:A

  参考解析: A选项struct ord{int x;int y;int z;}struct ord a;错误,不能在定义结构体的同时,又用结构体类型名定义变量。应该写成B选项或者D选项的格式。

  7、有以下程序:

2018年3月全国计算机二级C语言考试强化模拟题(1)

  在VC 6.0平台上编译运行,程序运行后的输出结果是(  )。

  A.10,6

  B.4,4

  C.2,4

  D.4,8

  参考答案:D

  参考解析: C语言中利用sizeof()函数判断数据类型长度,在VC 6.0平台中,整型int占有4个字节,double型数据占有8个字节。

  11、有以下程序:

2018年3月全国计算机二级C语言考试强化模拟题(1)

  程序运行后的输出结果是(?)。

  A.12 7

  B.12 12

  C.11 11

  D.11 7

  参考答案:D

  参考解析:本题考查宏定义的用法,宏定义只是做个简单的替换,所以本题中执行f(2)=(2*N+1)=11,执行f(1+1)=(1+1*N+1)=7。选项D正确。

  12、设栈的存储空间为S(1:50),初始状态为top=51。现经过一系列正常的人栈与退栈操作后,top=50,则栈中的元素个数为(??)

  A.1

  B.0

  C.50

  D.49

  答案:A

  答案解析:栈是一种特殊的线性表,它所有的插入与删除都限定在表的同一端进行。入栈运算即在栈顶位置插人一个新元素,退栈运算即取出栈顶元素赋予指定变量。栈为空时,栈顶指针top=0,经过入栈和退栈运算,指针始终指向栈顶元素。初始状态为top=51,当top=50时,则栈中S(50:51)存储着元素,51-50=1.元素个数为l。故本题答案为A选项。

  13、以下选项中,当X为大于1的奇数时,值为0的表达式是(  ):

  A.x%2==0

  B.x/2

  C.x%2!=0

  D.x%2==1

  答案:D

  参考解析: 算术运算符的优先级高于关系运算符的优先级,所以当X为大于1的奇数时,A选项的值为假,即0。B选项的值为不定值,但绝对不是0。C选项的值为真,即1。D选项的值为真,即1。

  14、若有定义语句:

  int a[2][3],*p[3];

  则以下语句中正确的是( )。

  A.p=a;

  B.p[0]=8;

  C.p[0]=&a[1][2];

  D.p[1]=&a;

  参考答案:C

  参考解析: A选项错误,因为p是指向一个指针数组,作为数组名,不能指向别的地方。B选项错误,因为p[0]是一个int指针,也就是int*;而a是一个指向指针的指针int**。C选项正确,因为p[0]是一个int*a[1][2]是int,&a[1][2]是int*,类型吻合。D选项错误,因为a作为数组名,不能取地址。即使能取,P[1]是int*,&a是int***,类型不对。因此C选项正确。

  15、以下不合法的字符常量是( )。

  A.'\\'

  B.'\"'

  C.'\018'

  D.'\xcc'

  参考答案:C

  参考解析: 转义字符中,八进制的表示形式为\ddd,但是八进制中不能包含数字8,所以C选项不合法。

  16、以下选项中能正确定义二维数组的选项是(  )。

  A.double a[][3]={2*3};

  B.double a[][3];

  C.double a[][3]={};

  D.double a[2][3]={{1.0},{2.0},{3.0,4.0}};

  参考答案:A

  参考解析: 如果第一维的长度没有指定.则定义的同时需要完成初始化,否则不知道分配多大的内存空间给它,所以选项B、C错误;二维数组a[2][3]中只有两个元素,都是一维数组,一维下标最大只能是a[1],所以选项D错误;若完成初始化的二维数组,第一维的长度没有指定,则第一维的大小按如下规则确定:若初值个数能被第二维大小整除,所得的商就是第一维的大小;若不能整除,则所得的商加l作为第一维的大小,所以选项A相当于:double a[1][3]={6};其中a[0][0]=6,其他元素赋值0,故选项A正确,答案为A。

  17、以下叙述中正确的是(  )。

  A.当对文件的读(写)操作完成之后,必须将它关闭,否则可能导致数据丢失

  B)打开一个已存在的文件并进行了写操作后,原有文件中的全部数据必定被覆盖

  B.在一个程序中当对文件进行了写操作后,必须先关闭该文件然后再打开,才能读到第1个数据

  C.C语言中的文件是流式文件,因此只能顺序存取数据

  参考答案:A

  参考解析: 文件一旦使用完毕,应该使用关闭文件函数把文件关闭,以避免出现文件数据丢失等错误,所以选项A正确;若使用fopen打开文件函数打开文件时,指定打开方式为 ‘a’,则可以向文件追加信息,而不是覆盖原文件内容,故B选项错误;在文件被打开后,使用文件定位函数rewind或fseek函数,可以将文件指针移到文件的任何位置,所以在写操作完成后,可以直接将文件指针定位到文件首,接着读数据,而不需要先关闭文件,再打开读取,故C选项错误;使用文件定位函数可以随机读写文件,故D选项错误。所以本题答案为A。

  18、关于程序模块化,以下叙述错误的是(  )。

  A.程序模块化可以提高程序运行的效率

  B.程序模块化可以提高程序编制的效率

  C.程序模块化可以提高程序代码复用率

  D.程序模块化可以提高调试程序的效率

  参考答案:A

  参考解析: 程序模块化的目的是为了降低程序的复杂度,使程序设计、调试和维护等操作简单化,降低程序的复杂度可以提高程序的编制效率和调试效率,每个模块可以复用,提高了程序代码的复用率,故选项B、C、D正确;程序的运行效率与程序的算法、实现有关,与程序模块化无关,故答案选A。

  19、若要通过位运算使整型变量a中的各位数字全部清零,以下选项正确的是(  )。

  A.a=a&0;

  B.a=a10;

  C.a=a^0;

  D.a=!a;

  参考答案:A

  参考解析: 本题考查位运算符和位运算。“I”运算符,l|0=1,0|0=0,所以选项B中a变量的各位数字保持不变,故B错误;“”’运算符,l^0=1,O^0=1,所以选项C中a变量的各位数字中,1保持不变,0变成1,故C错误;“!”运算符,!1=0,! 0=1,所以选项D中a变量的个位数字中,1变成0,0变成1,故D错误;“&”运算符,l&0=0,0&0=0,所以选项A中各位数字全部清零,故答案为A。

  20、程序调试的任务是( ),

  A.设计测试用例

  B.验证程序的正确性

  C.发现程序中的错误

  D.诊断和改正程序中的错误

  参考答案:D

  参考解析: 程序调试的任务是诊断和改正程序中的错误。

扫描/长按二维码帮助考试通关
2018年等考报考资讯
2018等考各科通关技巧
2018各科最新预测试卷
2018等考各科备考资料

微信搜索"考试吧"了解更多考试资讯、下载备考资料

  相关推荐:

  2018年全国计算机等级考试必做试题汇总(各科目)

  2018年全国计算机等级考试复习知识点汇总(各科目)

  2018计算机等级考试报名时间|各地报名入口|报名条件

  2018年全国计算机等级考试时间|教材目录(2018年版)

  2018全国计算机等级考试备考经验及应试技巧汇总

  报名方法|考试内容|考试大纲|2018计算机等级考试科目

  历年真题汇总|考试吧策划:2018年计算机等级考试报考指南

0
收藏该文章
0
收藏该文章
文章搜索
万题库小程序
万题库小程序
·章节视频 ·章节练习
·免费真题 ·模考试题
微信扫码,立即获取!
扫码免费使用
版权声明:如果计算机等级考试网所转载内容不慎侵犯了您的权益,请与我们联系800@exam8.com,我们将会及时处理。如转载本计算机等级考试网内容,请注明出处。
Copyright © 2004- 考试吧计算机等级考试网 出版物经营许可证新出发京批字第直170033号 
京ICP证060677 京ICP备05005269号 中国科学院研究生院权威支持(北京)
在线模拟试题
考证通关杀器
考试最新资讯
一次通关技巧