2016年四川师范大学计算机科学学院程序设计复试笔试仿真模拟题
● 摘要
一、选择题
1. 若有定义语句:
A.-264 B.552 C.144 D.264 答:A
则执行语句:
后,a 的值是( )。
【解析】赋值运算结合性为自右向左,
相当于
2. 以下选项中,合法的一组C 语言数值常量是( )。
A.12. 0Xa23 4.5e0 B.028 .5e_3 -0xf C..177 4el.5 Oabc D.0x8A 10.000 3.e5 答:A
自右向左计算过程为
【解析】A 项,C 语言中小数必须要有小数点,但是小数部分可以省略,12. 是合法的常量;C 语言中十六进制数以0X 或Ox 开头,0Xa23是指十六进制数a23; 在C 语言中,“e ”或“E ”后跟一个整数来表示以10为底的幂数,
只能在(K7之间;D 项,10,000中不能有逗号。
3. 若有以下程序
则程序的输出结果是( )。 A.1, 2 B.0, 2 C.1, 3 D.2, 3 答:A 【解析】
是先判定a 是否等于0, 如果a 等于0, 跳出循环;否则进入循环;但是不
B 项,028表示的是八进制,以0开头,
0后面的数字只能在0~7之间。C 项,4el.5,e 后面只能跟整数,Oabc 表示八进制,0后面的数字
管判定是否成功,判定结束后都要执行a++操作。
第一次循环,a 等于-2, 满足条件,执行a++,++b, a 变成-1,b 变成1; 第二次循环,a 等于-1,满足条件,执行a++,++b, a 变成0,b 变成2; 第三次循环,a 等于0, 不满足条件,执行a++,a 变成1,b 仍然是2。
4. 以下不能用于实型数据的运算符是( )。
A.% B./ C.* D.+ 答:A 【解析】“%”符号两边必须是整数,因此答案为A 项。
5. 有以下程序:
程序运行后的输出结果是( )。 A.Hay
B.How are you C.we D.ay 答:D
for 语句循环体执行功能是,【解析】每次当
元素为
时,自动将
下一个元素赋值给
赋值完成后,j 值加1,因此的和分别赋值给输出结果为ay 。
6. 若各选项中所用变量已正确定义,函数fun 中通过return 语句返回一个函数值,以下选项中错误的程序是( )。
答:B
【解析】当在所有函数的外部、被调用之前说明函数时,在对函数进行说明的语句后面所有
位置上都可以对该函数进行调用。函数说明也可以放在调用函数内的说明部分,如在main 函数内 部进行声明,则只能在main 函数内部才能识别该函数。B 项错误,main 函数不能识别fun 函数。
7. 有以下程序:
己知字母A 的ASCII 码值为65, 程序运行后的输出结果是( )。 A.E , 68 B.D , 69 C.E , D
D. 输出无定值 答:A
【解析】C 语言中,字符型可以作为整型用,可以出现在任何需要整型的表达式中。该题中c2, 然后将cl 按字母格式输出,c2按整型格式输出。 的main 函数将字符A 经过运算分别赋值给cl 、
8. 若变量x 、y 已正确定义并赋值,以下符合C 语言语法的表达式是( )。
A.x+l=y B.++x, y=x-- C.x=x+10=x+y D.double (x )/10
答:B
【解析】B 项正确,++x是前缀表达式,y=x--是复合语句,先进行x--, 然后把自减后的值赋给y 。A 项错误,x+1是右值,不能被赋值;C 项错误,x+10是右值,不能被赋值;D 项错误,应改成(double )x/10, double (x )/10是表示声明了一个double 变量,它名字是(x )A0,显然不符合C 语言语法。
9 .
有如
下程序
:
程序运行后的输出结果是( )。
A.2.0 B.1.7 C.2 D.1 答:D
【解析】在类型转换过程中,如果较高类型转换成较低类型,直接忽略多余位数。在程序执