计算机等级考试二级C语言上机试题及答案2
改错题 在主函数中从键盘输入若干个数放数组中,用0结束输入并放在最后一个元素中。下列给定程序中,函数fun的功能是:计算数组元素中值为正数的平均值(不包括0)。例如:数组中元素的值依次为39,-47,21,2,-8,15,0,则程序的运行结果为19.250000。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! #include #include 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(" Please enter some data(end with 0):"); do { scanf("%d", &x[i]); } while (x[i++] != 0); printf("%lf ", fun(x)); } 参考答案: 1、int sum=0.0; 应改为 double sum=0.0; 2、return s ; 应改为 return t ; 相关资料 |