2018年北京市培养单位工程科学院864程序设计之C程序设计考研核心题库
● 摘要
一、选择题
1. 有如
程序运行后的输出结果是( )。
A.2.0
B.1.7
C.2
D.1
【答案】D
【解析】在类型转换过程中,如果较高类型转换成较低类型,直接忽略多余位数。在程序执行过程为:调用函数sub (3.8,2.1. , 3.8—2.1=1.7(double 类型),(int )强制转换将1.7转换成int 类型1, 然后返回1并输出,故D 选项正确。
2. 有如下程序:
程序运行后的输出结果是( )。
A.Ta=l,b=2
B.Fa=0,b=2
C.Fa=l,b=l
D.Ta=0,b=l
【答案】C
【解析】题目中判断if 条件是否成立,a++先取值为0,则
printf
按照格式输出a=l,b=l。故C 选项正确。 为0,且不计算b++,而后a 自增得a=l,if 条件不成立执行else 函数体,输出F 。最后执行语句下程序
:
程序的运行结果是( )。
A.3
B.5
C.6
D. 结果不确定
【答案】A
【解析】( )的优先级大于*,故先将1.99强制转化为1,即浮点数1.99被强制转换成1,执行语句a=(int )1.99*3;计算得a=lX3=3。
4. 若变量已正确定义,则以下for 循环( ):
A. 执行4次B. 执行3次
C. 执行次数不确定
D. 执行123次
【答案】C
【解析】
优先级低于
逻辑与表达式。规则为:对expl 求值,若为0, 则表达式为0, 则不计算exP2; 若expl 非0, 则求exP2值,作为表达式值。本题计算过程为:先判断a>b为假,m=0, 整个逻辑表达式为假,不计算右表达式,n=2。故C 选项正确。
5. 有以下程序段
若要求使p 指向一个int 型的动态存储单元,在横线处应填入的是( )。
A.int
B. (int*)
C.int*
D. (*int)
【答案】B
C 语言标准规定malloc 函数返回值的类型为void*,malloc ,【解析】函数的调用形式为:(size )
size 的类型为unsignedint 。p 是指向int 型的指针,要把void*强制转换成int*。
程序运行后的输出结果是( )。
A.10
B.9
C.8
D.7
【答案】B
【解析】
主函数中语句
代
入
即为计算
7. 以下叙述中错误的是( )
A.C 语言的可执行程序是由一系列机器指令构成的
B. 用C 语言编写的源程序不能直接在计算机上运行
C. 通过编译得到的二进制目标程序需要连接才可以运行
D. 在没有安装C 语言集成开发环境的机器上不能运行C 源程序生成的exe 文件
【答案】D
【解析】A 项正确,C 语言的可执行程序是由一系列机器指令组成的;BC 项正确,用C 语言编写的源程序 必须经过编译,生成二进制目标代码,再经过连接才能运行;D 项错误,C 语言经过编译链接后的二进制目标代码可以脱离C 语言集成开发环境独立运行。
8. 若已有定义语句:inta , b, c; ,且变量己正确赋初值,则以下选项中正确的赋值表达式是( )。
A.a= (b=c) +8;
B. (a=b) =c=9;
C.a= (b==c) = ‘A ’ ;
D.a+b=c+l;
【答案】A
【解析】A 项正确,将c 赋值给b 后又加上8, 然后再赋值给a ; B、D 项错误,赋值运算符左
用函数的返回值作为参数,
所以首先计算代
入得6, 所
以值为9。 得值为3, 然后计
算
相关内容
相关标签