//输出因子2和5个数的最小值
//判断因子并传回因子2的个数和5的个数
int fac(int n, int& n2,int & n5) {
while (n > 1) {
if (n % 2 == 0) { n2++; n /= 2; }
else if (n % 5 == 0) { n5++; n /= 5; }
else break;
}
return 0;
}
int main()
{
int n = 0;
cin >> n;
int n2 = 0, n5 = 0;
while (n > 1) {
fac(n, n2, n5);
n -= 1;
}
int tem = n2 < n5 ? n2 : n5;
cout << tem;
while循环比for循环更方便。



京公网安备 11010502036488号