C可以这么写——
代码资料“
#include "stdio.h"
double fact(int n){
int m;
double s,t;
for(t=s=m=1;m<=n;s+=t/=m++);
return n ? s : 0.0;
}
int main(int argc,char *argv[]){
int n;
printf("Enter n(int 0<n)...\nn=");
if(scanf("%d",&n)!=1 || n<1){
printf("Input error, exit...\n");
return 0;
}
printf("The result are %f\n",fact(n));
return 0;
}