大家帮帮我吧!明天就要用啊!十万火急!!!

2025-01-20 01:06:49
推荐回答(1个)
回答1:

#include
using namespace std;

void main()
{
int primes[47]={1},sieve[200];
int next;
for(int i=0;i<200;i++)
sieve[i]=i+1; //将所有候选数放入筛中
for(int a=1;a<47;a++)
{
for(int j=1;j<200;j++)
{
if(sieve[j]!=0)
{
primes[a]=sieve[j];
next=sieve[j];
sieve[j]=0;
break;
} //寻找最小的next
}
for(int x=1;x<=100;x++)
for(int y=1;y<=200;y++)
if(next*x==sieve[y])
sieve[y]=0; //将next的所有倍数从筛中筛去
}
for(int t=0;t<47;t++)
cout< cout<}