#include
int main()
{
int i,j;
printf("%d ",2);
for(i=3;i<=100;i++)
{
for(j=2;j
{
if(i%j!=0)
{
printf("%d ",i);
}
else break;
}
}
return 0;
}
#include <stdio.h>
int main()
{
int i,j;
printf("%d ",2);
for(i=3;i<=100;i++)
{
for(j=2;j<i;j++)
{
if(i%j==0)
{
break;
}
}
if(j==i)
printf("%d ",i);
}
return 0;
}
你把输出放在内循环里了
#include <stdio.h>
#include<math.h>
int main()
{
int n,i,k,m=0;
for(n=2;n<100;n=n+1)
{ k=sqrt(n);
for(i=2;i<=k;i++)
{if(n%i==0) break;}
if(i>=k+1) {printf("%d\t",n);
m=m+1;}
if(m%10==0)
printf("\n");
}
return 0;
}
这个地方错了,i%j==0 跟你这个差别可大了,i%j==0是 只有满足这个条件跳出循环,你这个i%j!=0就输出,可不得输出那么多数么,
#include <stdio.h>
int main()
{
int i,j;
printf("%d ",2);
for(i=3;i<=100;i++)
{
for(j=2;j<i;j++)
{
if(i%j==0)
{
break;
}
}
if(j==i)
printf("%d ",i);
}
return 0;
}