输入一个正整数n,求n!(即阶乘)末尾有多少个0? 比如: n = 10; n! = 3628800,所以答案为2
输入描述:
输入为一行,n(1 ≤ n ≤ 1000)
输出描述:
输出一个整数,即题目所求
输入例子1:
10
输出例子1:
2
#include <stdio.h> /* n!阶乘末尾后的零的个数 */ /* 得到尾数为零的情况只可能是2*5, 为2的因子充足,所以只需要看5的个数 */ /* 25*/ int main(int argc, char **argv) { int n,i,s,m; scanf("%d", &n); s=0; for(i=5; i<=n; i += 5){ m=i; while(m%5 == 0){ m /= 5; s++; } } printf("%d\n", s); return 0; }