饮歌长啸
#include <stdio.h>#include <stdlib.h>//test函数返回任意正整数n的阶乘的尾部的0的个数int test(int n){int i = 0;int j = 0;int nCount = 0;if (n >= 5){for(i = 5; i <= n; i += 5){for (j = 5; i /j*j == i ; j *= 5){nCount++;}}}return nCount;}int _tmain(int argc, _TCHAR* argv[]){int n = 1;printf("输入一个正整数:\n");scanf("%d", &n);printf("%d!尾部0的个数是:%d\n", n, test(n));system("pause");return 0;}我通过仔细分析问题,编制了一种算法,计算n!分解因子中5的个数即是n!尾部0的个数,编了以上程序进行运算,得出200!的尾部有49个0,不知道对不对,楼主参考。