#include<stdio.h>
int main()
{
int n;
int result;
scanf("%d",&n);
if (n<0)
printf("输出错误!\n");
}
else if(n==0||n==1)
result=1;
else
result=n*(n-1);
return result;
printf("%d的阶乘为%d",n,result);
return 0;
你自己设一个n值,按这个流程走一遍就知道为什么不行了。