第 1 页:选择题 |
第 3 页:程序填空题 |
第 4 页:程序修改题 |
第 5 页:程序设计题 |
点击查看:2017年12月计算机二级考试C语言考前提分卷汇总
一、选择题(每小题1分,共40分)
1 [单选题] 以下选项中不能在c语言程序中用作用户标识符的是( )。
A.auto
B.scanf
C.Float
D._3_14
参考答案:A
参考解析:
c语言的标识符是由字母、数字和下划线组成,第一个字符不能是数字,只能是字母或下划线;A、B、C、D都是合法的标识符;auto是C语言的关键字,不能用作用户标识符,故选项A错误;scanf是标准库函数名,可以用作用户标识符,只是在使用标识符的地方不能包含stdio.h头文件,故选项B正确;C语言的标识符区分大小写,F1oat与关键字f1oat不同,可以用作用户标识符,故选项C正确;j-14是合法的用户标识符,故选项D正确;因此答案选A。
2 [单选题] 下面描述中错误的是( )。
A.系统总体结构图支持软件系统的详细设计
B.软件设计是将软件需求转换为软件表示的过程
C.数据结构与数据库设计是软件设计的任务之一
D.PAD图是软件详细设计的表示工具
参考答案:A
参考解析:
详细设计的任务是为软件结构图中而非总体结构图中的每一个模块确定实现算法和局部数据结构,用某种选定的表达工具表示算法和数据结构的细节,所以A错误。
3 [单选题] 有以下程序:
程序运行后的输出结果是( )。
A.1002,ZhangDa,1202.0
B.1002,ChangRong,1202.0
C.1001,ChangRong,1098.0
D.1001,ZhangDa,1098.0
参考答案:D
参考解析:
本题考查结构体的相关操作以及传值、传址的区别,该题中调用f函数后,会生成参数a的一个副本,而不会改变a的值,所以a值维持原值,选项D正确。
4 [单选题] 下列数据结构中,不能采用顺序存储结构的是( )。
A.非完全二叉树
B.堆
C.队列
D.栈
参考答案:A
参考解析:
根据完全二叉树的性质6,满二叉树和完全二叉树可以按层序进行顺序存储,但一般的二叉树不适用。堆可以用一维数组来存储也可以用完全二叉树来直观地表示堆的结构。队列、栈本身就是顺序存储的。故本题答案为A选项。
5 [单选题] 以下关于C语言的叙述中正确的是( )。
A.C语言的数值常量中夹带空格不影响常量值的正确表示
B.C语言中的变量可以在使用之前的任何位置进行定义
C.在C语言算术表达式的书写中,运算符两侧的运算数类型必须一致
D.C语言中的注释不可以夹在变量名或关键字的中间
参考答案:D
参考解析:
C语言的数值常量中不能夹带空格,所以A错误。C语言中的变量都必须先定义再使用,对变量的定义通常放在函数体内的前部,但也可以放在函数外部或复合语句的开头,不能随便放置,所以B错误。在C语言中运算符两侧的运算数据类型可以不一致,且结果与精度较高的保持一致,所以C错误。
6 [单选题] 若有定义:
float x=1.5;
int a=1,b=3,c=2;
则正确的switch语句是( )。
参考答案:A
参考解析:
switch语句的一般形式为: switch(表达式){
case常量表达式1:语句1;
ease常量表达式2:语句2;
default:语句n;
}
其中switch后的表达式只能是整型或字符型,故C选项错误;ease后面必须是常量表达式,所以D选项错误;switch()右括号后面不能有分号,放选项B错误,因此答案选A。
7 [单选题] 有以下程序:
运行时,若输入123450<回车>,则输出结果是( )。
A.66656
B.6566456
C.66666
D.6666656
参考答案:B
参考解析:
switch语句的执行流程是:首先计算switch后面圆括号中表达式的值,然后用此值依次与各个case的常量表达式比较,若圆括号中表达式的值与某个case后面的常量表达式的值相等,就执行此case后面的语句,执行后遇break语句就退出switch语句;若圆括号中表达式的值与所有case后面的常量表达式都不等,则执行default后面的语句。然后退出。所以输入l时打印65,输入2时打印6,输入3时打印64,输入4时打印5,输入5时打印6。
8 [单选题] 有以下程序:
程序执行后的输出结果是( )。
A.Prphsbn
B.Prohsbn
C.Progsbn
D.Program
参考答案:B
参考解析:
(*q)++是q所指的字符加l,q++就是指针移到下一个字符。因此B选项正确。
9 [单选题] 有以下程序:
程序运行后的输出结果是( )。
A.9,18
B.8,11
C.7,11
D.10,14
参考答案:D
参考解析:
第一次循环a的值为1,满足条件,执行b+=a,与a+=2,则b的值变为3,a的值变为3。执行a++,a的值为4,满足条件进入第二次循环,执行完循环体后b的值为7,a的值为6。执行a++,a的值为7,满足条件进入第三次循环,执行完循环体后b的值为14,a的值为9。执行a++.a的值变为10,不满足条件,循环结束。所以选择D选项。
10 [单选题] 定义无符号整数类为UInt,下面可以作为类UInt实例化值的是( )。
A.-369
B.369
C.0.369
D.整数集合{1,2,3,4,5}
参考答案:B
参考解析:
只有B选项369可以用无符号整数来表示和存储。A选项-369有负号,选项C 0.369是小数都不能用无符号整数类存储。选项D是一个整数集合得用数组来存储。
11 [单选题] 若有定义:
double a=22:int i=0,k=18;
则不符合C语言规定的赋值语句是( )。
A.a:a++,i++;
B.i=(a+k)<=(i+k);
C.i=a%11;
D.i=!a;
参考答案:C
参考解析:
自增、自减操作符适用于char、short、int、long、float、double等类型,故选项A正确;赋值操作符 “=”的优先级小于比较操作符“<=”,所以选项B等价于:i=((a+k)<=(i十k));,即将后面比较操作符的结果赋值给i,故选项B也正确;“!”是逻辑非运算符,i=!a表示将a表达式的值取反,赋值给i,故选项D也正确;求模运算符“%”的操作数只能是整数,故选项C错误,因此答案选C。
12 [单选题] 软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软件的是( )。
A.学生成绩管理系统
B.C语言编译程序
C.UNIX操作系统
D.数据库管理系统
参考答案:A
参考解析:
软件按功能可以分为:应用软件、系统软件、支撑软件。操作系统、编译程序、汇编程序、网络软件、数据库管理系统都属于系统软件。所以B、C、D都是系统软件,只有A是应用软件。
13 [单选题] 在下列模式中,能够给出数据库物理存储结构与物理存取方法的是( )。
A.外模式
B.内模式
C.概念模式
D.逻辑模式
参考答案:B
参考解析:
数据库系统的三级模式是概念模式、外模式和内模式。概念模式是数据库系统中全局数据逻辑结构的描述,是全体用户公共数据视图。外模式也称子模式或用户模式,它是用户的数据视图,给出了每个用户的局部数据描述。内模式又称物理模式,它给出了数据库物理存储结构与物理存取方法,所以选择B。
14 [单选题] 设有语句:printf(“%2d\n”,2010);,则以下叙述正确的是( )。
A.程序运行时输出2010
B.程序运行时输出20
C.程序运行时输出10
D.指定的输出宽度不够,编译出错
参考答案:A
参考解析:
printf()函数格式化字符串的一般形式为:[标志][输出最小宽度][精度][长度]类型。对于”-\n”表示结果以十进制形式输出带符号的整数,数字2表示输出的最小宽度为2,若实际位数多于2,则按实际位数输出,所以程序输出2010,故答案选A。
15 [单选题] 有以下程序:
程序运行后的输出结果是( )。
A.2344
B.4332
C.1234
D.1123
参考答案:B
参考解析:
在for(i=0;i<12;i++)c[s[i]]++中,数组元素s[i]的值作为数组c的下标,当退出循环时,数组c的4个元素的值分别为4、3、3、2。因此B选项正确。
16 [单选题] 有三个关系R、S和T如下:
则由关系R和S得到关系T的操作是( )。
A.自然连接
B.交
C.投影
D.并
参考答案:A
参考解析:
自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉,所以根据T中元组可以判断R和S做的是自然连接操作。
17 [单选题] 有以下程序(strcat函数用于连接两个字符串):
程序运行后的输出结果是( )。
A.IJK
B.ABCDE\OFG\OIJK
C.ABCDIJK
D.EFGIJK
参考答案:C
参考解析:
a中包含两个‘\0’,遇到第一个‘\0’时就表示字符串a结束。字符串处理函数strcat(字符数组a,字符数组b),功能是连接两个字符数组中的字符串,把字符串b连接到a的后面,结果放在字符数组a中。连接时将字符串a后的‘\0’取消,只在新串最后保留一个‘\0’。本题相当于将“ABCD”和“UK”连接。因此C选项正确。
18 [单选题] 有以下程序:
程序运行后的输出结果是( )。
A.1.6.2,1,
B.8,7,3,1,
C.4,7,5,2,
D.1,6,5,7,
参考答案:D
参考解析:
首先对二维数组进行赋值操作,a[0][0]、a[0][1]、…、a[3][2]、a[3][3]的值为1、4、…、6、l。通过for语句和if语句,对二维数组各列元素进行由小到大的排序操作,程序最后通过for语句输出二维数组对角线上的元素。因此D选项正确。
19 [单选题] 下面描述中.不属于软件危机表现的是( )。
A.软件过程不规范
B.软件开发生产率低
C.软件质量难以控制
D.软件成本不断提高
参考答案:A
参考解析:
软件危机主要表现在:软件需求的增长得不到满足;软件开发成本和进度无法控制;软件质量难以保证;软件不可维护或维护程度非常低;软件的成本不断提高;软件开发生产率的提高赶不上硬件的发展和应用需求的增长。所以选择A。
20 [单选题] 以下选项中,与k=n++完全等价的表达式是( )。
A.k=n,n=n+1
B.n=n+1,k=n
C.k=++n
D.k+=n+1
参考答案:A
参考解析:
本题考查后缀自增++运算符,n++表示n的当前值参与运算后,再自增1,所以表达式k=n++等价于k=n,n=n+1,故答案选A。
相关推荐:
【考试吧整理】计算机等级考试各科目历年真题