2017年9月计算机二级C语言考试考前模拟试题(1)

一、选择题(每小题1分,共40分)

1[单选题] 若有定义语句:double a,* P=&a;以下叙述中错误的是( )。 A.定义语句中的*号是一个间址运算符 B.定义语句中的*号是一个说明符

C.定义语句中的P只能存放double类型变量的地址

D.定义语句中,*P=&a把变量a的地址作为初值赋给指针变量P 参考答案:A

参考解析:在变量定义double a,* P=&a;中,*号是一个指针运算符,而非间址运算符,所以A错误。

2[单选题] 有以下程序:

程序运行后的输出结果是( )。 A.321 B.12300 C.1 D.123 参考答案:D

参考解析:程序首先将数组a[10]中的元素1、2、3分别写入了文件dl.dat文件中,然后又将dl.dat文件中的数据123,整体写入到了变量n的空间中,所以打印n时输出的数据为123。

3[单选题] 有以下程序:

程序运行后的输出结果是( )。 A.1,0,7,0, B.1,2,3,4, C.1,4,5,9, D.3,4,8,l0, 参考答案:A

参考解析:该程序首先在定义变量时,对二维数组a[][N]进行赋值操作;调用函数fun,函数fun的功能是将二维数组中的a[0][0]、a[1][1]、a[2][2]和a[3][3]赋值给一维数组,最后将一维数组元素1,O,7,0,输出。 4[单选题] 有以下程序段:

程序运行后的输出结果是( )。 A.a=10 b=50 c=30 B.a=10 b=50 c=10 C.a=10 b=30 c=10 D.a=50 b=30 c=50 参考答案:B

参考解析:本题中a>b的条件不满足,所以不执行逗号表达式a=b,b=c;的操作,而是执行c=a操作,即c的值为10。 5[单选题] 有以下程序:

程序执行后的输出结果是( )。 A.y=0 B.y=-1 C.y=1

D.while构成无限循环 参考答案:B

参考解析:执行y--直到值为0,由于y--是先用再减,所以退出循环时,y的值为-l。 6[单选题] 若有定义语句:int x=10;,则表达式x-=x+x的值为( )。 A.0

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4