2011年软考程序员考前练习试题及答案解析(6)
文章作者 100test 发表时间 2011:07:04 00:13:35
来源 100Test.Com百考试题网
76.设有定义“int x=8,y,z.”,则执行“y=z=x ,x=y==z.”后,变量x值是( )
A.0
B.1
C.8
D.9
【解析】这是逗号表达式组成的语句,要先计算“y=z=x ”,结果变量y和z的值均为8。注意 是后缀运算符,同时x等于9。再计算“x=y==z”,由于“==”优先于“=”,所以x的值等于“y==z”,而y和z值相等,所以运算结果为1,即x值为1。本题答案应选B。
【参考答案】 B
77.设有“int a=1,b=1.”,“printf("%d,%d",(a ,--b),b-1).”的输出是( )
A.1,-1
B.1,0
C.0,-1
D.0,0
【解析】printf()函数的功能是自右向左依次计算表达式的值,然后再按照自左向右的顺序输出各个表达式的值,所以题目中输出语句执行时,是依次计算下列两个表达式的值:
b-1 结果为0,注意变量b值不变.
(a ,--b)这是逗号表达式,先计算a ,结果变量a值为2.
再计算--b,结果变量b值为0.
整个逗号表达式的值就是--b的值,为0。
按照自左向右的顺序输出(a ,--b)和b-1的值,依次为0,0。本题答案应选D。
【参考答案】D
78.设有定义语句“char s[]="123".”,则表达式“s[3]”的值是 ( )
A.’1’
B.’3’
C.0
D.语法出错
【解析】字符数组s在定义时省略了数组长度,表示给每个数组元素均赋了初值。对本题来说,数组的长度为4.数组元素的值依次为:S[0]为 1 。S[1」为 2 。S[2]为 3 、S[3]为字符率结束标记符 \0 ,所以“s[3]”的值是 \0 。注意,这个字符的 ASCII代码值是整数 0,所以本题答案应选C。
【参考答案】 C
编辑特别推荐:
#0000ff>2010年软考程序员考试模拟试题及答案汇总
#0000ff>2010年全国计算机软考程序员全真模拟试卷八套答案及解析
#0000ff>2010年下半年软考程序员考试专家预测试题及答案
#0000ff>计算机软考程序员级冲刺试题
#0000ff>程序员之程序设计知识点置