Online Compiler C

#include "pt4.h" int f(int *K){ if (K<=0){ return 0; } while (*K!=1){ if(*K%5!=0){ return 0; } *K = *K / 5; } return 1; } void Solve() { Task("ZFunc11"); int K; int sum=0; for(int i=0;i<10;i++){ GetN(&K); if(f(&K)){ sum = sum +1; } PutN(sum); } }
1) 这段代码检查10个输入整数是否为5的幂次方数(如1,5,25,125等),并统计符合条件的数量。

2) 提示1:注意函数f中指针参数的使用方式,特别是条件判断`if (K<=0)`应该比较的是指针指向的值而不是指针地址本身。
提示2:考虑边界情况,当输入为0或负数时应该如何处理,以及数字1是否是5的幂次方数。