31C源程序中不能表示的数制是( )。
A.十六进制B.八进制C.十进制D.二进制
参考答案:D
参考解析:在C语言中整型常量可以用十进制、八进制和十六进制等形式表示,但不包括二进制,所以选择D。
32有以下程序:
程序运行后的输出结果是( )。
A.1B.11C.6D.21
参考答案:D
参考解析:本题考查位运算,以及按位或操作,将a左移一位相当于是将a乘以了4,所以a<<2等于20,二进制表示为00010100,与b按位或得到00010101,即21,所以选项D正确。
33设有定义:intk=0;以下选项的四个表达式中与其他三个表达式的值不相同的是( )。
A.++kB.k+=1C.k++D.k+1
参考答案:C
参考解析:先使k的值自增l后再使用,k++是先取得k的值再将k的值自增l,所以c选项中表达式的值为0,而其他三个表达式的值均为1,所以选择c。
34有以下程序:
程序运行后的输出结果是( )。
A.AfternoonB.ftemoonC.MorningD.oming
参考答案:A
参考解析:本题主函数中定义了一个指针数组a,可以将它看成一个以字符指针为元素的一维数组。和一般的一维数组名能赋给同类型指针变量一样,该字符指针数组也可以赋给指向字符指针的指针,所以数组名a可以用做函数fun()的实参。在fun()函数中,++P操作使形参P往后移动一个字符指针的位置,即指针a[1]的位置。故最后通过础nd()函数输出的字符串为“Afternoon”。因此A选项正确。
35有以下程序:
程序执行后的输出结果是( )。
A.PrphsbnB.ProhsbnC.ProgsbnD.Program
参考答案:B
参考解析:(*q)++是q所指的字符加l,q++就是指针移到下一个字符。因此B选项正确。
36有以下程序:
程序执行后的输出结果是( )。
A.1B.2C.4D.死循环
参考答案:A
参考解析:一一k先自减再使用,所以第一次判断条件即为while(4),条件为真,执行打印k的值k=4—3,结果为1;第二次判断条件即为while(0),条件为假,结束循环,打印回车换行符。所以选择A选项。
37以下叙述中错误的是( )。
A.可以给指针变量赋一个整数作为地址值
B.函数可以返回地址值
C.改变函数形参的值,不会改变对应实参的值
D.当在程序的开头包含头文件stdi0.h时,可以给指针变量赋NULL、、、
参考答案:A
参考解析:不能将一个整数直接赋给指针变量作为地址,所以A是错误的。函数的返回值可以是地址,即指针。函数调用中形参值的变化不会传递给实参。
38在E—R图中,用来表示实体联系的图形是( )。
A.椭圆形B.矩形C.菱形D.三角形
参考答案:C
参考解析:在E—R图中实体集用矩形,属性用椭圜,联系用菱形。
39有以下程序:
程序运行后的输出结果是( )。
A.3B.4C.5D.6
参考答案:B
参考解析:&按位与,如果两个相应的二进制位都为l,则该位的结果值为1,否则为0。l按位或,两个相应的二1进制位中只要有一个为l,该位的结果值为l。2的二进制为1 00000010,4的二进制为00000100,所以做或运算结果为1 00000110,该数与5即00000101做与操作结果为00000100,1即4。
40程序调试的任务是( )。
A.设计测试用例
B.验证程序的正确性
C.发现程序中的错误
D.诊断和改正程序中的错误
参考答案:D
参考解析:程序调试的任务是诊断和改正程序中的错误。
相关推荐: