本题初看没有什么问题,但是如果用int编程的话,输入20的时候数据会溢出,所以我们这里采用long long 的类型来编写。
#include<iostream>
using namespace std;
int main()
{
long long n,s=1;
cout<<"请输入数据,范围 1-20:"<<endl;
cin>>n;
for(long long i=1; i<=n; i++)
s=s*i;
cout<<"它的阶乘是:"<<s<<endl;
此题教会我们如果遇到简单的题也不能掉以轻心,而是要思考问题会出现在哪里