2017年浙江师范大学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.9 B.-9 C.18 D.0
【答案】D
【解析
J
计算顺序为
首先
即
最后
,
即
下
程
序
:
3. 以下关于字符串的叙述中正确的是( )。
A.C 语言中有字符串类型的常量和变量
B. 两个字符串中的字符个数相同时才能进行字符串大小的比较 C. 可以用关系运算符对字符串的大小进行比较 D. 空串比空格打头的字符串小 【答案】D
【解析】字符串比较的方法是:依次对si 和S2中对应位置上的字符两两进行比较,当出现第一对不相同的字符时,
即由这两个字符决定所在串的大小(比较字符大小的依据是其值)。空格是一种字符,所以空串肯定比空格打头的字符串小。
4. 有以下程序:
第 2 页,共 14 页
码
程序的运行结果是( )。 A.grameamee B.g a e C.programe D. 无输出字符 【答案】A
【解析】定义两个指针变量p1、p2, 分别指向数组Sl 、S2首地址,在for 循环中,比较两个指针对应地址 的元素是否相等,如果相等,则输出当前指针指向地址的字符串,故答案为A 选项。
5. 设a , b,c 是整型变量且均已赋值,则以下选项中错误的赋值语句是( )。
【答案】A
【解析】赋值运算结合性为由右向左结合,赋值运算符左值为变量,右值为变量或常量,且左右两边数据类 型相同才能实现赋值。A 项中,赋值运算能被赋值,A 项错误。B 项运算过程为,先赋值句。C 项运算过程为,先计算
程为,先将2赋给c , 再将c 赋给b ,然后计算
6. 有以下程序:
程序运行后的输出结果是( )。 A.12 B.13 C.15 D.11
再计算
左值为表达式,不是变量不将结果赋给a ,是正确的赋值语
将结果赋给b ,再将b 赋给a ,是正确的赋值语句。D 项运算过
将结果赋给a ,是正确的赋值语句。
第 3 页,共 14 页
【答案】A
【解析】直接置换宏定义命令行中相应形参字符串,非形参字符保持不变。
将
用
替
换
,
将
替换,再将F (5)用2.84+5替换,最后替
换结果为运行结果为:12<回车>。
7. 若有定义语句:inta=12; ,则执行语句:a+=a- =a*a; 后,a 的值是( )。
A.-264 B.552 C.144 D.264
【答案】A
【解析】赋值运算结合性为自右向左,a+=a-a*a相当于a=a-a*a,a=a+a; 自右向左计算过程为a=a-a*a=_132,a=a+a=-264。
8. 有以下程序:
t
程序运行后的输出结果是( )。 A.0 B.1 C.2 D.3
【答案】C 【解析】
和
运算,当以前缀形式出现时,则先进行加一或减一操作,再取值,当以
结果为
然后输出b 的值。即b 为2。
后缀形式出现时,则先取值,再进行加一或减一操作。a 初始定义为1,b 为0, 先执行0, 即if 判断为假,执行
二、设计题
9. 函数fun 的功能是:将8所指字符串中除了下标为奇数、同时ASCII 值也为奇数的字符之外,其余的所 有字符都删除,串中剩余字符所形成的一个新串放在t 所指的数组中。。
例如,若s 所指字符串中的内容为但所在元素
的下标为偶数,因此必须删除;而字符1的ASCII 码值为奇数,所在数组中的下标也为奇数,因此不应当删除, 其他依此类推。最后t 所指的数组中的内容应是
第 4 页,共 14 页
其中字符A 的ASCII 码值虽为奇数,
注意:部分源程序存在