首页>计算机>软件水平考试>模拟试题>正文
软考程序员考前练习试题及答案解析(六)

www.zige365.com 2010-7-28 15:03:40 点击:发送给好友 和学友门交流一下 收藏到我的会员中心

65.设有定义语句“int x[]=135791113},*p=x,则不能正确引用组x的合法元素的表达式是(
  A*(p--)
  B
*(--p)
  C
*(p++)
  D*(++p)

  【解析】分析备选答案A:由于*(p--)中的“--”是后缀运算符,所以“*(p--)”相当于“*p”,然后再对p1,由于p指向的数组元素是x[0],所以这个表达式正确引用了数组x的合法元素。分析备选答案B:由于*(--p)中的“--”是前缀运算符,所以要先对P进行减1操作,由于P指向的数组元素是x[0],所以p1后指向的数组元素是x[-1],这个元素不是数组x的合法元素,因此,这个表达式是错误的,本题答案应选B。至于备选答案C:分析方法和备选答案A完全相同,该表达式相当于数组元素X[0]。备选答案D:由于++是前缀,需要先对p进行加1,使得p指向数组元素x[1],这个元素也是数组x的合法元素。
  【参考答案】B

  66.下列程序段的输出是(
  char x=012y=013
  printf("%d%d%d" x&y x??y x&&y)
  A101
  B10
0
  C101
1
  D11l

  【解析】首先要注意字符型变量x的初值是八进制整数,对应的二进制整数是00001010,对应的十进制整数是10;字符型变量y的初值也是八进制整数,对应的二进制整数是00001011,对应的十进制整数是11。再来计算输出语句中的三个输出表达式的值:自右向左,先计算“x&&y”,由于运算符是逻辑运算符,所以按照逻辑值的规则,xy均为非0,运算结果是逻辑真,其值为"1”;再计算“x??y”,同样道理,xy均为非0,运算结果是逻辑真,其值为“1”;最后计算“x&y”,注意运算符是位与,由于x值为“00001010”,而y值为。“00001011”,按照位与的运算规则,结果为"00001010",对应的十进制整数是“10”,所以输出的结果是“1011”,本题答案应选C.
  【参考答案】C

67.对于输入语句scanf("%f%f"&a&b);要使变量ab上的值分别为 178248,则正确的输入是(
  A 178248后跟回车
  B 178 248后跟回车
  C 178248后跟回车
  D 178248后跟回车

  【解析】按照scanf()函数的语法要求,第1个形参是一个字符串常量,是由格式控制符和非格式控制符组成的,其中的非格式控制符必须原样输入。显然本题中的非格式控制符是在两个实数之间的逗号。从4个备选答案中可以看出,只有备选答案A中是用逗号分隔两个实数的,所以本题答案应选A
  【参考答案】 A

  68.执行下列程序段后的输出结果是(
  x=9
  while( x7)
  { printf(*)x--;}

  A****
  B
***
  C
**
  D*

  【解析】注意执行while循环前,变量x的初值为9.1次执行while循环,控制循环的条件为“x>7”,这时x9,条件成立,执行循环体:输出单个“*”x再减1x8。继续循环,控制循环的条件是“x>7',现在x8,条件成立,输出“*”x1,现在x7。继续循环时,控制循环的条件不满足,退出循环。所以本段程序执行后,输出结果为两个“*”,本题答案应选C
  【参考答案】C

  69.关于带参数的主函数,下列说法中错误的是(
  A.带参数的主函数中,形式参数名称是系统规定的,用户不能自己选择
  B.带参数的主函数中,第1个形式参数是int型的
  C.带参数的主函数中,第2个形式参数是字符型数组
  D.带参数的主函数中,实际参数值只能在执行程序的命令行中获得

  【解析】带参数的主函数定义格式是系统规定的,具体如下:
  main(argcargv)

  int argc
  char *argv[]
  {...
  
}
  由此看出,第2个形式参数argv是指向字符型数据的指针型数组,不是字符型数组所以备选答案

本新闻共2页,当前在第1页  1  2  

我要投稿 新闻来源: 编辑: 作者:
相关新闻