输入一个整数,求它的所有质数因子。(C++)
输入一个整数,求它的所有质数因子。(C++)
日期:2017-11-25 15:16:22 人气:2
for(k=2;k<=i;k++) 循环判断质数这里逻辑错了,假设i=9,k=2,按你的逻辑就输出来了9,但9不是质数。
建议专门写个类似如下的质数判断函数供主程序调用。
bool IsPrime(int n)
{
if (2 == n)
return true;
int i;
for (i = 2; i <= sqrt(n); ++i) {
if (0 == n % i)
return false;
}
return true;
}