问题 填空题

下列给定程序中,函数fun的功能是:计算整数n的阶乘。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include<stdlib.h>
#include<stdio.h>
double fun(int n)

double result=1.0;
while(n>1&&n<170)
/*********found************/
result*=--n;
/***********found*********/
Return;

voidmain()

int n;
system("CLS");
printf("Enter an integer:");
scanf("%d",&n);
printf("\n\n%d!=%1d\n\n",n,fun(n));

答案

参考答案:(1)result*=n--;
(2)return result;

解析: 该题采用循环语句计算n的阶乘。当n大于1且小于170时,令result与n相乘,同时n自动减1,循环至n=2(n=1时无须相乘)。最后将阶乘的积result返回给主函数。

填空题
问答题