给定程序MODll.C中函数fun的功能是:计算n!。 例如,给n输入5,则输出120.000000。 请改正程序中的错误,使程序能输出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! #include d

admin2013-03-29  51

问题 给定程序MODll.C中函数fun的功能是:计算n!。  例如,给n输入5,则输出120.000000。
    请改正程序中的错误,使程序能输出正确的结果。
    注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include
double fun(int n)
{double result=1.0;
/*****************found******************/
  if n==0
    reLurn 1.0;
  while(n>1&&n<170)
/*****************found******************/
    result *=n--
  reLurn result;
}
main()
{  int n;
  printf("Input N:");
  scanf("%d",&n);
  printf("\n\n%d!=%lf\n\n",n,fun(n));
}

选项

答案(1)if (n==0) (2)result*=n一一;

解析 (1)错误标识符下的if语句的条件表达式,根据C语言的基本语法条件,表达式应该用括号括起来,所以将“ifn=0"改为“if(n==0)"。
    (2)在C语言中,语句以分号“;"结束,在第二标识下“result*=n--"没有分号结束符,显然应改成“result*=n--;"。
转载请注明原文地址:https://jikaoti.com/ti/yIn0FFFM
0

最新回复(0)