学习目标:90秒内 一气呵成 打完代码,并且运行正确,并且提交正确。
【题意】
输入一个整数n(n<=20),计算 s = n!, n!表示n的阶乘。n!=1*2*3*4*…*n ,其中n由键盘输入。输出s的值。
【输入格式】
一行一个整数n。
【输出格式】
一行一个整数n的阶乘。
【样例输入】
4
【样例输出】
24
【注意】
1、int的范围是 -21亿 到 +21亿,
n | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 |
s | 120 | 720 | 5040 | 40320 |
362880 |
3628800 |
39916800 |
479001600 |
6227020800 |
87178291200 |
…… | …… | …… | …… |
2、所以寻找比int还要大范围的类型,就是 long long ,范围是:-18446744073709551615 到 +18446744073709551615(20个位,也就是19个位的数long long都能表示)
3、怎么使用long long ? 请看以下代码就全明白
#include<cstdio>
using namespace std;
int main()
{
long long a,b,s;
scanf("%lld %lld",&a,&b);
s=a+b;
printf("%lld\n",s);
return 0;
}
【样例输入】
4
【样例输出】
24