2016年河南大学教育科学学院C程序设计(同等学力加试)考研复试题库
● 摘要
一、选择题
1. 有如下程序:
程序运行后的输出结果是( )。 A.2, B.2, 3, C.3, D.1, 答:A
【解析】在输出函数中,调用了
函数。
函数作用是定义一个静态变量
对
变量init 进行叠加形参data 的值,并将结果作为函数的返回值。在main ( )函数中,实参i=l传递给sum ( )函数的形参data ,因此输出为2。
2. 有以下程序:
程序的运行结果是( )。 A.1 B.10 C.0 D.4 答:A
【解析】程序的执行过程为:a=l时,条件不成立,执行语句b+=a; 得到b=l; a=2时,
a%2=0条件成立,执行语句break ; 跳出循环。输出b=l, 故A 项正确。
3. 有以下程序:
执行时如输入为:则输出结果是( )。 A.abcdefg
B.
c. D.bcdefgh 答:D
【解析】题目中for 语句含义是,每次将函数getchar ( )的输入值赋给变量c ,如果不等于‘#’,则执行putcbar (++c), 即将当前变量c 值的ASCII 码+1后,再输出改变后的变量c 的值。当变量c 的值等于‘#’,则终止循环,所以输出应该是bcdefgh ,答案为D 选项。
4. 有以下程序:
程序的运行结果是( )。 A.21,18 B.81,81 C.21,21 D.18,18
答:A
,替换过程是,用宏调用提供的实参字符串,【解析】带参数的宏的调用格式:宏名(实参表)S 直接置换宏定义命令行中相应形参字符串,非形参字符保持不变。(k+j+2•被置换成k+j+2*k+j+2,计算时先计算2*k,结果为21; S (j+k+2.被置换成j+k+2*j+k+2,计算时先计算2*j,结果为18。程序的运行结果是21,18,故A 选项正确。
5. 有以下定义则以下选项中正确的表达式是( )。
答:A
【解析】%运算是取两整数相除后余数的运算符,它只适用于整数的运算。A 项正确,果为double 型, 但是通过强制类型转换将其转换为int 型;B 项错误,个优先级的,
先运行为左值。
6. 若有定义
答:C
【解析】C 项错误,在C 语言的算术运算符中,取余运算符必须是整数。
A 项,赋值运算符的优先级高于“,”运算法,先进行赋值;B 项,将的计算结果赋给变量
7. 有以下程序:
程序运行后的输出结果是( )。 A.1, 4, 8 B.4, 4, 4 C.1, 2, 4 D.1, 1, 4 答:B
才是正确的;C 项错误,
b 中的
结
中==和!=是同一
不能作
而因为double 是占8位的,不能自动转换,必须要强制类型转换
,
为double 型;D 项错误,
则不符合C 语言规定的赋值语句是( )。
的左右两侧的两个运算分量
右边的逻辑表达式
D 项,首先对变量a 求逻辑非操作,然后将结果赋值给变量i
【解析】sizeof ( )函数表示求该变量所占字节空间,同时一个指针变量占用4字节长度[在Win32系统中], 因此输出为4。
8. 若有以下程序
相关内容
相关标签