用c语言:输出在1~100内的所有素数

如题所述

#include<stdio.h>

#include<math.h>

intmain()

{

intn;

inti;

intflag=0;

for(n=2;n<=100;n++)

{

flag=0;

for(i=2;i<=sqrt(n);i++)

{

if(n%i==0)

{

flag=1;

break;

}

}

if(flag==0)

printf("%d",n);

}

return0;

}

扩展资料

C语言判断素数

#include<stdio.h>

intmain()

{

inti,j;

intm,n,p;

for(i=11;i<1000;i++)

{

if(i>=11&&i<=99)

{

m=i%10;

n=i/10;

}

else

{

m=i/100;

n=i%10;

}

if(m==n)

{

for(j=2;j<i/2;j++)

if(i%j==0)

break;

if(j>=i/2)

{

printf("%d",i);

}

}

}

return0;

}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-11-05
#include<stdio.h>
bool isprime(int x)
{
for(int i=2;i*i<=x;i++)
if(x%i==0) return false;
return true;
}
int main()
{
printf("1~100的素数有:\n");
for(int i=2;i<=100;i++)
if(isprime(i)==true) printf("%d ",i);
}本回答被网友采纳
第2个回答  2016-11-05
#include<stdio.h>
bool vis[105];
int main()
{
int i,j;
for(i=2;i*i<=100;i++)
for(j=i+i;j<=100;j+=i)
vis[j]=1;
for(i=2;i<=100;i++)
if(!vis[i])printf("%d ",i);
return 0;
}
相似回答