就业数据资源平台
当前位置:首页 > C语言程序设计
计算机等级考试二级C语言上机试题及答案5

改错题
  下列给定程序中,函数fun的功能是:用下面的公式__的近似值,直到最后一项的绝对值小于指定的数(参数num)为止:
  例如,程序运行后,输入0.0001,则程序输出3.1414。
  请改正程序中的错误,使它能输出正确的结果。
  注意:不要改动main函数,不得增行或删行,不得更改程序的结构!
  #include <math.h>
  #include <stdio.h>
  float fun(float num)
  {
  int s;
  float n, t, pi;
  t = 1;
  pi = 0;
  n = 1;
  s = 1;
  /********found********/
  while (t >= num)
  {
  pi = pi+t;
  n = n+2;
  s = -s;
  /********found********/
  t = s%n; 
  }
  pi = pi*4;
  return pi;
  }
  main()
  {
  float n1, n2;
  printf("Enter a float number: ");
  scanf("%f", &n1);
  n2 = fun(n1);
  printf("%6.4f\n", n2);
  }
  参考答案:
  1、while(t>=num)应改为while (fabs(t)>=num)
  2、t=s%n;应改为 t=s/n;
就业数据资源平台