用C语言写出输出1到1000的素数 每行八个

2025-01-01 17:22:34
推荐回答(2个)
回答1:

#include
#include
#include "iomanip.h"

int isprame(int p)
{
if (p > 1)
{
for (int i=2;i*i <= p;i++)
{
if (p%i == 0)
{
return 0;
}
}
return 1;
}
else
{
return 0;
}
}

void main()
{
int N;
cin>>N;//输入N,比如1000

int count = 0;
for (int i = 2;i<=N;i++)
{
if(isprame(i))
count++;
}
cout<
int *prame =(int *) malloc(sizeof(int)*count); //分配了一个动态数组

count = 0;
for (i = 2;i<=N;i++)
{
if(isprame(i))
{
prame[count] = i;
count++;
}
}

for (i=0;i {
cout< if((i+1)%8==0)
cout< }

}

回答2:

#include
main()
{
int i,j,k=0;
for(i=1;i<=1000;i++)
{
for(j=2;j<=i/2;j++)
if(i%j==0)break;
if(j>i/2){printf("%d ",i);k++;}
if(k==8){k=0;printf("\n");}
}
}
希望对你有帮助!