首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 计算机考试 > 等级考试 > 二级考试 >

计算机二级C语言专项习题二(2)

2013-01-19 

  11.6 以下程序的输出结果是_____。

  fun(int x)

  { int p;

  if(x==0||x==1) return (3);

  p=x-fun(x-2);

  return p;

  }

  main()

  { printf("%d\\n",fun(9)); }

  答案:7

  11.7 以下程序的输出结果是_____。

  fun(int n,int *s)

  { int f1,f2;

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

  else

  { fun(n-1,&f1);

  fun(n-2,&f2);

  *s=f1+f2;

  }

  }

  main()

  { int x;

  fun(6,&x);

  printf("%d\\n",x);

  }

  答案:8

  11.8 以下程序调用invert函数按逆序重新放置a数组中元素的值,a数组中的值在main函数中读入。请填空。

  #define N 10

  void invert(int *s,int i, int j)

  { int t;

  if(i  { t=*(s+i); *(s+i)=_____; *(s+j)=t;

  invert(s,_____,j-1);

  }

  }

  main()

  { int a[N],i;

  for(i=0; i  invert(a,0,N-1);

  for(i=0; i  printf("\\n");

  }

  答案:*(s+j) i+1 i

  11.9 以下程序的输出结果是_____。

  funa(int a,int b)

  { return a+b; }

  funb(int a,int b)

  { return a-b; }

  sub(int (*t)(),int x,int y)

  { return (*t)(x,y); }

  main()

  { int x,(*p)(int ,int);

  p=funa;

  x=sub(p,9,3);

  x+=sub(funb,8,3);

  printf("%d\\n",x);

  }

  答案:17

  11.10 以下程序中的trap函数是一个用梯形法求定积分的通用函数,梯形法求定积分s的公式为:

  n-1

  x=((f(a)+f(b))/2+∑ f(a+i*h)*h, h=│(a-b)/n│

  i=1

  其中,n为积分小区间数,以下程序调用trap函数求积分,被积函数是:

  f(x)=x*x+3*x+2,且 n=1000,a=0,b=4。

  #include "math.h"

  double trap(double _____,double a,double b)

  { double t,h; int i,n=1000;

  t=0.5*((*fun)(a)+(*fun)(b));

  h=fabs(a-b)/(double)(n);

  for(i=1; i<=n-1; i++) t=t+_____;

  t=t*h;

  return (t);

  }

  double mypoly(double x)

  { return (x*x+3.0*x+2.0); }

  main()

  { double y,(*pf)(double);

  pf=_____;

  y=trap(pf,0.0,4.0);

  printf("%f\\n",y);

  }

  答案:(*fun)(double) (*fun)(a+i*h) mypoly

热点排行