为了解决这个问题,首先从数学分析阶乘,比如100!,结果值尾数产生0的条件,不难察觉,若两个数种有2和5则结果尾数肯定为0,而阶乘计算中,2的出现概率远远大于5,所以只要计算出5出现的次数,基本可以得出答案
#include <stdio.h>
int main()
{
int n;
int i,j;
int count =0;
scanf("%d",&n);
for(i=5;i<=n;i+=5)
{
count++;
for(j=25;j<=n;j *= 5)
if(!(i%j))count++;
}
printf("count:%d\n",count);
}