当n小时,结果正确,但是n一大,比如n=13时答案不应该是6227020800,我的是1932093504,我知道此时值应该溢出,所以是这个问题吗?应该怎么改?
#include <iostream>
using namespace std;
int JH(int num){
int f;
if(num==1)
f=1;
else
f=JH(num-1)*num;
return f;
}
int main(){
int n;
cin>>n;
cout<<JH(n)<<endl;
return 0;
}
白猪掌柜的
相关分类