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

改错题
  在主函数中从键盘输入若干个数放数组中,用0结束输入并放在最后一个元素中。下列给定程序中,函数fun的功能是:计算数组元素中值为正数的平均值(不包括0)。例如:数组中元素的值依次为39,-47,21,2,-8,15,0,则程序的运行结果为19.250000。
  请改正程序中的错误,使它能得出正确的结果。
  注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
  #include <conio.h>
  #include <stdio.h>
  double fun(int x[])
  {
  /********found********/
  int sum = 0.0;
  int c = 0, i = 0;
  while (x[i] != 0)
  {
  if (x[i] > 0)
  {
  sum += x[i];
  c++;
  }
  i++;
  }
  /********found********/
  sum \= c;
  return sum;
  }
  main()
  {
  int x[1000];
  int i = 0;
  printf("\nPlease enter some data(end with 0):");
  do
  {
  scanf("%d", &x[i]);
  } while (x[i++] != 0);
  printf("%lf\n", fun(x));
  }
  参考答案:
  1、int sum=0.0; 应改为 double sum=0.0;
  2、return s ; 应改为 return t ;
就业数据资源平台