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

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

 85.设有定义语句“char ch='77',则下列说法中正确的是(
  Ach中含有1个字符
  Bch中含有2个字符
  Cch中含有3个字符
  D.语法出错

  【解析】从定义语句中可以看出,变量ch是字符型变量,显然只能存放单个字符,所以备选答案BC是错误的说法。再分析赋予的初值,'77'是在符号的后面跟有2位的人进制数,所以'77'是转义字符,转义字符是单个字符,所以本题答案应选A
  【参考答案】 A

  86.设有函数调用语句“f(x1x1x2(x1x2)),正确的说法是(
  A.调用的实际参数是2
  B.调用的实际参数是3
  C.调用的实际参数是4
  D.调用时会出现语法错误。

  【解析】对函数调用来说,实际参数一般都是表达式,而表达式之间必须用逗号来分隔,所以只要区分调用时的表达式数目,即是实妹参数的数目。对本题来说,第1个表达式是“x1”、第2个表达式是“x1x2”、第3个表达式是一个逗号表达式“x1x2”,所以本题的函数调用时,表达式的数目为3,当然实际参数的数目就是3,所以本题答案应选B
  【参考答案】B

  87.计算平方数时不可能引起二义性的宏定义是(
  A#define SOR(x)x*x
  B
#define SQR(x)(x)*(x)
  C
# define SQR(x)(x*x)
  D# define SQR(x)((x)*(x))

  【解析】分析备选答案A:如果宏引用是“SQR(23)”,则宏替换后的结果是“23*23”,结果是错误的,因此这个答案可能引起二义性。分析备选答案B:如果宏引用是“ 3SQR(23)”,则宏替换后的结果是“3/(23)*(23)”,结果也是错误的,因此这个答案可能引起二义性。分析备选答案C:如果宏引用是“SQR(23)”,则宏替换后的结果是“(23*23)”,结果也是错误的,因此这个答案可能引起二义性。只有备选答案D不会引起二义性。所以本题答案应选D
  【参考答案】D

88.执行下列程序段后,x的位是(
  int a=8b=7c=6x=1
  if(a6)if(b7)if(c8)x=2else x=3
  A0
  B
1
  C
2
  D3

  【解析】按照"else"只和前面最近的"if"配对的原则,上述程序段可以写成下列更为清晰的程序清单:
  int a=8b=7c=6x=1
  if(a6)
  if(b
7)
  if(c
8)
  x= 2

  else
  x=3

  依据abc的值,很容易看出第1“if语句的条件“a6”是成立的,接着执行第2“if语句,该语句的条件“b7”,是不成立的,所以下面的“if-esle”语句不执行,因此x的值不变,仍为1。所以本题答案应选B
  【参考答案】B

  89.执行下列程序段后,变量y的值为(
  int x[]=1234},y*p=&x[1]
  y=(*--P)++;
  A1
  B
2
  C
3
  D4

  【解析】从数据定义语句中可以得出下列结论:指针变量P指向的数组元素是x[1]。再来分析赋值句的右边表达式“(*--p)++,其中的“--”优先于“*”先计算“--p”,使得p指向数组元素x[0];所以“(*--p)”就是数组元素a[0],再计算其后的++,由于++是后缀,所以表达式的值就是数组元素x[0]的值,为1,然后再对数组元素x[0]1。因此变量y的值是1。本题答案应选A
  【参考答案】A

  90.能正确表达逻辑关系“-1x1并且-1y1”的表达式是(
  A(-1x1)&&(-1y1)
  B(-1x1)&(-1y
1)
  C((-1x)??(x1))&&((-1y)??( y
1))
  D(-1x)&&(x1)&&(-1y)&&(y1)

  【解析】注意数学中的“-1x1”含义是“-1x同时x1”,搞清楚这一点后,再来分析给出的备选答案。对于答案A:其中的-1x1不能表示“-1x同时x1”,例如,当x0时,“-1

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

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