1089: 阶乘的最高位
Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 4346 Solved: 3003
Submit Status Web Board
Description
输入一个正整数n。输出n!的最高位上的数字。
Input
输入一个正整数n(n不超过1000)。
Output
输出n!的最高位上的数字。
Sample Input
1000
Sample Output
4
HINT
注意double类型溢出问题。
Source
#include<stdio.h>
int main()
{
int n,i,j;
double s;
scanf("%d",&n);
s=1.0;
for(i=1;i<=n;i++)
{
s=1.0*s*i;
while(s>=10)
{
s=s/10;
}
}
printf("%.0f\n",s);
return 0;
}