满意答案
gothic微光
推荐于 2017.12.16
采纳率:52% 等级:9
已帮助:963人
你的代码很乱 而且完全有逻辑错误,即你的代码判断素数是有问题的。我帮你写了一个完整的逻辑清新的小代码,希望帮到你。
#include
#include
#include
bool IsPrimeNumber(int num)//判断num是否为素数,是的话返回true,否则返回false
{
assert(num >= 1);
if(num == 1)
return false;
else
{
for(int i = 2; i <= sqrt(double(num)); i++)
if(num % i == 0)
return false;
}
return true;
}
int main()
{
for(int start = 2, finish = 100; start <= finish; start++)//判断区间[start,finish]的数是否为素数,是则输出。
if(IsPrimeNumber(start))
printf("%d\t", start);
printf("\n");
return 0;
}
36分享举报