问题
单项选择题
使用递归函数计算n!(n=0,1,2,3,……)的是( )
A.fac(int n)
int i,f=1;
if(n==0)return 1;
else for(i=1;i<=n;i++)f*=i;
return f;
B.fac(int n)
if(n==0||n==1)return 1;
else return n*fac(n-1);
C.fac(int n)
int i=1,f=1;
if(n==0)return 1;
else while(i<=n)f*=i++;
return f;
D.fac(int n)
int i=1,f=1;
if(n==0)return 1;
else dof*=i;while(i++<n);
return f;
答案
参考答案:B
解析: A、C、D项分别使用for、while、do…while循环来计算n! (n=0,1,2,3,……)的值。