首页>计算机等级考试>模拟试题>正文
2009年9月计算机等级考试二级C语言模拟试题(2)

www.zige365.com 2009-9-6 16:23:42 点击:发送给好友 和学友门交流一下 收藏到我的会员中心

  21.以下程序的输出结果是( )

  long fun(int n)

  { long s;

  if(n==1||n==2)s=2;

  else s=n-fun(n-1);

  return s;}

  main()

  { printf(″%1d\n″,fun(3));}

  A.1  B.2  C.3  D.4

  【参考答案】A

  22.以下程序的输出结果是( )

  union myun

  { struct

  { int x,y,z;}u;

  int k;

  } a;

  main()

  { a.u.x=4;a.u.y=5;a.u.z=6;

  a.k=0;

  printf(″%d\n″,a.u.x);}

  A.4〖DW〗 B.5〖DW〗 C.6〖DW〗 D.0

  【参考答案】D

  23.以下有4组用户标识符,其中合法的一组是( )

  A.For -sub Case B.4d DO Size C.f2_G3 IF abc D.WORD void define

  【参考答案】C

  24.已知各变量的类型如下

  int i=8,k,a,b;

  unsigned long w=5;

  double x=1.42,y=5.2;

  则以下符合C语言语法的表达式是( )

  A.a+=a-=(b=4)*(a=3) B.a=a*3+2 C.x%(-3) D.y=float(i)

  【参考答案】A

  25.下列程序的输出结果是( )

  main()

  {

  int a=2;a%=4-1;

  printf(″%d″,a);a+=a*=a-=a*=3;

  printf(″\n%d″,a);

  }

  A.2,12  B.-1,12  C.1,0  D.2,0

  【参考答案】D

  26.以下不正确的if语句形式是( )

  A.if(x>y&&x!=y);

  B.if(x==y)x+=y;

  C.if(x!=y)scanf(″%d″,&x)else scanf(″%d″,&y);

  D.if(x

  【参考答案】C

  27.对于下面的程序,说法正确的是( )

  main()

  {

  int x=3,y=4,z=2;

  if(x=y+z)printf(″x=y+z″);

  else printf(″x!=y+z″);

  }

  A.不能通过编译 B.输出6 C.输出x!=y+z D.输出x=y+z

  【参考答案】D

  28.标准库函数fgets(buf,n,fp)的功能是( )

  A.从fp所指向的文件中读取长度为n的字符串存入缓冲区buf

  B.从fp所指向的文件中读取长度不超过n-1的字符串存入缓冲区buf

  C.从fp所指向的文件中读取n个字符串存入缓冲区buf

  D.从fp所指向的文件中读取长度为n-1的字符串存入缓冲区buf

  【参考答案】D

  29.下面程序的输出是( )

  int b=3;

  fun(int *k)

  {

  int b=2;

  b=*(k++)*b;

  return(b);

  }

  main()

  {

  int a[]={11,12,13,14,15,16};

  b=fun(&a[1])*b;

  printf(″%d\n″,b);

  }

  A.24  B.72  C.11  D.33

  【参考答案】B

  30.以下能对二维数组a进行正确初始化的语句是( )

  A.int a[2][ ]={{1,0,1},{5,2,3}};   B.int a[ ][3]={{1,2,3},{4,5,6}};

  C.int a[2][4]={{1,2,3},{4,5},{6}};  D.int a[ ][ ]={{1,0,1}{},{1,1}};

  【参考答案】B

  31.与y=(x>0? 1:x<0? -1:0);的功能相同的if语句是( )

  A.if(x>0)y=1;  B.if(x)

  else if(x<0)y=-1; if(x>0)y=1;

  else y=0; else if(x<0)y=-1;

  C. y=-1 D.y=0;

  if(x) if(x>=0)

  if(x>0)y=1; if(x>0)y=1;

  else if(x==0)y=0; else y=-1;

  else y=-1;

  【参考答案】A

  32.下列程序段的输出结果是( )

  void fun(int *x,int *y)

  { printf(″%d%d″,*x,*y);*x=3;*y=4;}

  main()

  {

  int x=1,y=2;

  fun(&y,&x);

  printf(″%d%d″,x,y);

  }

  A.2 1 4 3  B.1 2 1 2  C.1 2 3 4  D.2 1 1 2

  【参考答案】A

我要投稿 新闻来源: 编辑: 作者:
相关新闻
2009年9月计算机等级考试二级C语言模拟试题(一)