2018年北京市培养单位高能物理研究所864程序设计[专硕]之C程序设计考研仿真模拟五套题
● 摘要
一、选择题
1. 有以下程序:
执行时输入:123<回车>, 则输出结果是( )。
A.1,2,3,2,3,3,
B.1, 2, 3,
C.2, 3, 4, 3, 4, 4,
D.1, 1, 1, 2, 2, 3
【答案】A
【解析】本题执行过程为:输入1, 匹配easel , 输出1, 然后执行b++得b=2, 再执行下一个case 的语句输出2,然后执行b++得b=3,继续执行default , 输出3; 输入2,执行case2, 输出2, 然后执行b++得b=3,执行default 输出3; 输入3,执行default 输出3。故A 项正确。
2. 有以下程序:
程序运行后的输出结果是( )。
A.1
B.2
C.4
D.8
【答案】D
【解析】f (l )输出2,然后调用f (2)输出4, 再调用f (4)输出8。
3. 有以下定义inta ;longb ;doublex , y ;,则以下选项中正确的表达式是( )。
D.y=x+y=a
【答案】A
【解析】%运算是取两整数相除后余数的运算符,它只适用于整数的运算。A 项正确,x-y 结果为double 型,但是通过强制类型转换将其转换为int 型;B 项错误,中==和!=是同一个优先级的,先运行a==x,而因为double 是占8位的,不能自动转换,必须要强制类型转换
,
才是正确的;C 项错误,(a*y)%b中的(a*y)为double 型;D 项错误,x+y不
能作为左值。
4. 有以下程序:
程序运行后的输出结果是( )。
A.5, 11
B.7, 1
C.7, 11
D.6, 1
【答案】B
【解析】第一' 次循环,a=l,b=b+a=3,a=a+2=3,b=b%10=3;
第二次循环,a=3,b=b+a=6,a=a+2=5,b=b%10=6;
第二次循环,a=5,b=b+a=ll,a=a+2=7,b=b%10=l; 结束循环。
5. 以下叙述中错误的是( )。
A.C 程序必须由一个或一个以上的函数组成
B. 函数调用可以作为一个独立的语句存在
C. 若函数有返回值,必须通过return 语句返回
D. 函数可以通过实际参数和形式参数之间进行数据传递
【答案】C
【解析】C 项错误,比如main 函数中有则可以通过exit 函数返回状态。A 项正确,C 程序至少有一个main 函数;B 项正确,C 语言中的函数可以仅进行某些操作而不返回函数值,这时函数的调用可作为一条 独立的语句;D 项正确,当函数调用为传引用时,形参指针和实参指针指向同一块内存,修改形参的同时也就修 改了实参。
6. 有以下程序
执行后的输出结果是( )。
A.2
B.3
C.7
D.0
【答案】A
【解析】函数的递归调用,调用过程如下表所示。
7. 有以下程序(程序中库函数
用以判断ch 中的字符是否为小写字母):