点击查看:2018年3月全国计算机二级C语言考试强化模拟题汇总
1、结构化程序的三种基本结构是( )。
A.递归、迭代和回溯
B.过程、函数和子程序
C.顺序、选择和循环
D.调用、返回和选择
参考答案:C
参考解析: 仅使用顺序、选择、循环三种基本控制结构就足以表达出各种其他形式结构的程序设计方法。故本题答案为C选项。
2、若有以下定义和语句:
则输出结果是( )。
A.10 7
B.10 5
C.5 5
D.5 8
参考答案:C
参考解析: strlen函数返回字符串的长度,求字符串1长度时,遇到结束标志‘\0’为止,但是长度不包括结束标识。1字符数组sl的后5个元素没有赋值,都为‘\0’,即“abcd!”后1为‘\0’。所以strlen(s1)的值为5。字符指针s2所指向的字1符串中,\n为转义字符换行符,表示1个字符,\\也为转义字1符,代表\,也是l个字符,其后为字符串结束标识‘0’;所以strlen(s2)的值也为5。因此C选项正确。
3、以下叙述中正确的是( )。
A.C语句必须在一行内写完
B.C程序中的每一行只能写一条语句
C.C语言程序中的注释必须与语句写在同一行
D.简单C语句必须以分号结束
参考答案:D
参考解析: C语句可以跨行来写,但是必须以分号结束,所以A选项错误。C程序中的一行可以有多条语句,所以B选项错误。C语言中的注释语句可以与原语句放在一行也可以不放在一行,所以C选项错误。
4、以下不合法的数值常量是( )。
A.8.0E0.5
B.1e1
C.011
D.0xabed
参考答案:A
参考解析: A选项中E后面的指数必须为整型数据,所以A错误。C选项中011表示的是八进制常量.Oxabcd表示的是十六进制常量。
5、有以下程序:
"%d;%d",&a,&b);
能把整数3赋给变量a,5赋给变量b的输入数据是( )。
A.3 5
B.3,5
C.3;5
D.35
参考答案:C
参考解析: 输人数据的格式必须与scanf()的格式控制串完全匹配,所以输入时必须在3和5之间输入“;”。
7、有以下程序:
"BORDER-TOP-COLOR: ; BORDER-LEFT-COLOR: ; BORDER-BOTTOM-COLOR: ; BORDER-RIGHT-COLOR: " border=0 hspace=0 alt=2018年3月全国计算机二级C语言考试强化模拟题(2) src="http://www.exam8.com/computer/UploadFiles/201802/2018022617471784.jpg">"BORDER-TOP-COLOR: ; BORDER-LEFT-COLOR: ; BORDER-BOTTOM-COLOR: ; BORDER-RIGHT-COLOR: " border=0 hspace=0 alt=2018年3月全国计算机二级C语言考试强化模拟题(2) src="http://www.exam8.com/computer/UploadFiles/201802/2018022617473176.jpg">'\0'时,while(* s)跳出循环,这样字符串结束标志'\0'没有复制给*t,造成*t不完整。注意,*t++=*s++是先执行t=*s,然后才进行t=t+1,s=s+1。B、C、D都能将'\0复制过去。
3、在面向对象方法中,不属于“对象”基本特点的是( )。
A.一致性
B.分类性
C.多态性
D.标识唯一性
参考答案:A
参考解析: 对象有如下一些基本特点:标识唯一性、分类性、多态性、封装性、模块独立性好。所以选择A。
4、以下程序段中的变量已正确定义:
"BORDER-TOP-COLOR: ; BORDER-LEFT-COLOR: ; BORDER-BOTTOM-COLOR: ; BORDER-RIGHT-COLOR: " border=0 hspace=0 alt=2018年3月全国计算机二级C语言考试强化模拟题(2) src="http://www.exam8.com/computer/UploadFiles/201802/2018022617475132.jpg">"BORDER-TOP-COLOR: ; BORDER-LEFT-COLOR: ; BORDER-BOTTOM-COLOR: ; BORDER-RIGHT-COLOR: " border=0 hspace=0 alt=2018年3月全国计算机二级C语言考试强化模拟题(2) src="http://www.exam8.com/computer/UploadFiles/201802/2018022617480080.jpg">"right? ";
B.char ss()[20]={"right?"};
C.char*ss[6];88[1]= "right? ";
D.char*ss()={"right? "};
参考答案:A
参考解析: 数组定义后,不可以对数组整体赋值,s是二维数组,因ss[1]是一维字符数组,即字符串,字符串赋值可以使用strcpy(ss[1],”right”);这样的形式,而选项A中对二维数组中的第“l”维(相当于一个一维数组)赋值,是不可以的。选项B和D是定义时对数组初始化,这是可以的。选项C中,将字符串在内存中的首地址赋给指针数组的一个元素,这是可以的。
微信搜索"考试吧"了解更多考试资讯、下载备考资料