#include<stdio.h>
int main(){
int x,i,m=1;
scanf("%d",&x);
for(i=1;i<=x;i++){
m*=i;
}
printf("%d",m);
return 0;
}
29的阶乘用int型是不够的,long long都不够,用double吧
#include<stdio.h>
int main(){
int x,i;
double m=1;
scanf("%d",&x);
for(i=1;i<=x;i++){
m*=i;
}
printf("%g",m);
return 0;
}
应该是数值太大,溢出了