%可以这样写:
function F = nn(n)
if n<=1 %未做严密的输入参数检查,可自行完善,也可输入异常参数看看效果:)
F = 1;
else
F = n * nn(n-1); %递归调用
end
end
%Matlab 2009 + Win7 32位 测试通过
自己随手写了个,试试吧
#include
int calcu(int n)
{
if(n>1)
return calcu(n-1)*n;
else
return 1;
}
int main()
{
int n = 5;
int result = calcu(n);
printf("result %d! =%d ",n,result);
return 0;
}