#include
#include
#include
using namespace std;
int main()
{int m,n,k=0;
bool prime;
for(m=101;m<=200;m=m+2)
{prime=true;
for(n=2;n<=int(sqrt(m));n++)
if(m%n==0)
{prime=false;
break;
}
if(prime)
{cout< k++;
}
if(k%10==0) cout<<"\n";
}
return 0;
}
这是个排出100-200之间素数的小程序.
以上是我编制的程序,显示结果是:
101 103 107 109 113 127 131 137 139 149
151 157 163 167 173 179 181 191 193 197
199 这是正确答案
但是如果将程序第6行改为k=1,结果为什么是这样的:
101 103 107 109 113 127 131 137 139
149 151 157 163 167 173 179 181 191 193
197 199 注:139后面少一个我知道原因,主要是不明白为什么第一行和第二 行之间为什么空了3行....
请达人指点3X!
--------------------next---------------------
阅读(1186) | 评论(0) | 转发(0) |