求解:分析数组算法错误——求 300 !的末尾有几个零。
#include<stdio.h>int main()
{
int n,c,a[100],i,m,f,d,b;
n=300;
i=2;
c=1;
f=d=0;
while(n/i!=1)
{
if(n%i==0)
{
a[c]=i;
n=n/i;
c=c+1;
}
else
i=i+1;
}
a[c]=i;
for(b=1;b<=c;b++)
{
if(a[b]%5==0)
f=f+1;
if(a[b]%2==0)
d=d+1;
}
if(d>=f)
printf("%d",d);
else
printf("%d",f);
return 0;
}