首页 >> 计算机
计算机等级考试
考试指南 | 考试资讯 | 复习指导 | 一级考试 | 二级考试 | 三级考试 | 四级考试
您当前的位置: 首页 >> 计算机 >> 计算机等级考试 >> 二级考试
站内搜索:

2013年计算机二级考试C语言课后模拟题七及答案
作者:城市网 来源:考试大 更新日期:2013-2-27

  一 单项选择题

  1.以下程序的输出结果是( C )。

  int d=1;

  fun(int p)

  {static int d=5;

  d+=p;

  printf("%d ",D);

  return(D);

  }

  main( )

  { int a=3; printf("%d\n",fun(a+fun(D)));}

  A) 6 9 9

  B) 6 6 9

  C) 6 15 15

  D) 6 6 15

  2.下列程序执行后的输出结果是( C )。

  void func1(int i);

  void func2(int i);

  char st[ ]="hello,friend!";

  void func1(int i)

  {printf("%c", st[i]);

  if(i<3){i+=2;func2(i);}

  }

  void func2(int i)

  {printf("%c", st[i]);

  if(i<3){i+=2;func1(i);}

  }

  main()

  {int i=0; func1(i); printf("\n");}

  A) hello

  B) hel

  C) hlo

  D) hlm

  3.在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是( B )。

  A) 地址传递

  B) 单向值传递

  C) 由实参传给形参,再由形参传回实参

  D) 传递方式由用户指定

  4.以下函数值的类型是( A )。

  fun( float x )

  {float y;

  y=3*x-4;

  return y;

  }

  A) int

  B) 不确定

  C) void

  D) float

  5.设有以下函数:

  f( int a)

  {int b=0;

  static int c=3;

  b++; c++;

  return(a+b+C);

  }

  如果在下面的程序中调用该函数,则输出结果是( A )。

  main()

  {int a=2, i;

  for(i=0;i<3;i++) printf("%d\n", f(a));

  }

  A) 7

  B) 7

  C) 7

  D) 7

  8 9 10 7

  9 11 13 7

  6.以下程序的输出结果是( B )。

  int a, b;

  void fun()

  {a=100; b=200;}

  main()

  {int a=5, b=7;

  fun();

  printf("%d%d\n", a,

  B);

  }

  A) 100200

  B) 57

  C) 200100

  D) 75

  7.以下所列的各函数首部中,正确的是( C )。

  A) void play(var a:Integer, var b:Integer)

  B) void play(int a, B)

  C) void play(int a, int B)

  D) Sub play(a as integer, b as integer)

  8.以下程序的输出结果是( C )。

  fun(int x, int y, int z)

  {z=x*x+y*y; }

  main()

  {int a=31;

  fun(5, 2, a);

  printf("%d", a);

  }

  A) 0

  B) 29

  C) 31

  D) 无定值}

  9.当调用函数时,实参是一个数组名,则实参向形参传递的是( B )。

  A) 数组的长度B) 数组的首地址

  C) 数组每一个元素的地址

  D) 数组每个元素中的值

  10.以下程序的输出结果是( A )。

  long fun( int n)

  {long s;

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

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

  return s;

  }

  main()

  {printf("%ld\n", fun(3)); }

  A) 1

  B) 2

  C) 3

  D) 4

  11.有如下函数调用语句:

  func(rec1, rec2+rec3, (rec4, rec5));

  在该函数调用语句中,含有的实参个数是( A )。

  A) 3

  B) 4

  C) 5

  D) 有语法错

  12.有如下程序:

  int func(int a,int B)

  {return(a+B);}

  main( )

  {int x=2,y=5,z=8,r;

  r=func(func(x,y),z);

  printf(“%d\n”,r);

  }

  该程序的输出的结果是( D )。

  A) 12

  B) 13

  C) 14

  D) 15

  13.以下程序的输出结果是( B )。

  long fib(int n)

  {if(n>2) return(fib(n-1)+fib(n-2));

  else return(2);

  }

  main( )

  {printf(“%ld\n”,fib(3));}

  A) 2

  B) 4

  C) 6

  D) 8

  14.在C语言中,变量的隐含存储类别是( A )。

  A) auto

  B) static

  C) extern

  D) 无存储类别

  15.在下列的函数调用中,不正确的是( D )。

  A) max(a,B);

  B) max(3,a+B);

  C) max(3,5);

  D) int max(a,B);

  16.以下程序的输出结果是( C )。

  func(int x, int y)

  {int z;

  z=x+y;

  return z;

  }

  main( )

  {int a=10, b=20, c=30, s;

  s=func((a--, b++, a+B), c--);

  printf(“%d\n”, s);

  }

  A) 30

  B) 40

  C) 60

  D) 50

  17.现有以下程序:

  #include<string.h>

  inverse(char str[ ])

  {char t;

  int i, j;

  for(i=0, j=strlen(str); i<strlen(str)/2; i++, j--)

  {t=str[i];

  str[i]=str[j-1];

  str[j-1]=t;

  }

  }

  main( )

  {char str[100];

  scanf(“%s”, str);

  inverse(str);

  printf(“%s\n”, str);

  }

  如果输入an anple,该程序的输出结果是( D )。

  A) an anple

  B) elpna na

  C) an

  D) na

  18.在下列叙述中,正确的一条是( A )。

  A) puts和gets函数只能输入或输出一个字符串

  B) 在C语言中,函数可以递归调用或递归定义

  C) 用scanf函数输入数据时可以规定精度,例如scanf(“%7.2f”,&a);

  D) 外部变量只限于本文件中使用

  19.以下程序的输出结果是( C )。

  power(int x, int n)

  {int p;

  if(n>0) p=power(x, n-1)*x;

  else p=1;

  return (p);

  }

  main( )

  {int x=2, n=3;

  printf(“%d\n”, power(x, n));

  }

  A) 5

  B) 6

  C) 8D) 9

  20.在C语言的函数中( C )。

  A) 必须有形参

  B) 形参必须是变量名

  C) 可以有也可以没有形参

  D) 数组名不能作形参


计算机等级考试相关文章:
网站首页 - 关于我们 - 版权声明 - 广告服务 - 网站地图 - 会员专区 - 客户服务 - 疑难解答 - 联系我们
Copyright© 2010 cn.cityy.cn 城市网 版权所有
中国·城市教育 粤ICP备06023013号