1089: 阶乘的最高位
时间限制: 1 Sec 内存限制: 128 MB
[状态] [讨论版] [提交] [命题人:admin]
题目描述
输入一个正整数n。输出n!的最高位上的数字。
输入
输入一个正整数n(n不超过1000)。
输出
输出n!的最高位上的数字。
样例输入 Copy
1000
样例输出 Copy
4
提示
注意double类型溢出问题。
参考代码
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n , i;
double a;
scanf("%d", &n);
a=1.0;
for(i=1;i<=n;i++)
{
a=a*i;
while(a>=10)
{
a=a/10;
}
}
printf("%d", (int)a);
return 0;
}