69,373
社区成员
发帖
与我相关
我的任务
分享
int main(int argc, char* argv[]){
int ia[201] = {0};
ia[2] = 2;
for(int i = 3; i < 201; i += 2) ia[i] = i;
int isign = 3, ipos = 3;
while(isign){
isign = ipos;
if(ipos >= 201) break;
while(ipos < 201 && 0 == ia[ipos]){
ipos += 2;
isign = ipos;
}
if(!ia[isign]) break;
int itemp = isign;
while(isign < 201){
itemp += 2 * isign;
if(itemp >= 201) break;
else ia[itemp] = 0;
}
ipos += 2;
}
//print 输出 100 - 201内的素数
for(int i = 100; i < 201; i++)
if(ia[i]) printf("%3d ", ia[i]);
system("pause");
return 0;
}