用C语言编写一个程序输出3到100间的素数

如题所述

#include <stdio.h>
#define N 100

void main()
{
int k;
printf("3到100间的素数为:\n");
for (int j=3;j<N;j++)
{
k=0;
for(int i=2;i<j;i++)
if(j%i==0) k=1;
if(k==0) printf("%d ",j);
}
printf("\n");
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-12-15
兄台,可以看看:
#include <stdio.h>
#include <math.h>

int main()
{
int i,j,k=1;
for(i=3;i<100;i++)
{
for(j=2;j<=sqrt(i);j++)
{
if(0==i%j)
{
k=0;
break;
}
}
if(1==k)
printf("%d\t",i);
k=1;
}
return 0;
}

在 Tubro 和 VC6.0上都可以运行。
主要是楼上回答的在第二个for中,可以将i<j改为i<sqrt(j),可以节省运算时间本回答被提问者采纳
第2个回答  2010-12-06
#include <stdio.h>
int j[100];
int j = -1,count = 0;
int main(void){
for(int i = 3;i < 101;++i,++j){
if((i % 2 == 0)||( i % 3 == 0)||(i % 5 == 0) || (i % 7 == 0)){
contine;
}
++count;
a[j] = i;
}

for(int k = 0;k < count;++conut){
printf("%i ",count);
}

return 0;
}
相似回答