C语言求100以内素数的问题

#include<stdio.h>
void main()
{ int t,i;

for(i=2;i<=100;i++)
t=1;
for(t=2;t<i;t++)
if(i%t==0)
t=0;
if(t==0)printf("%d",i);

}
各位高手能不能看我这个程序哪里错了?
按一楼和2楼的改不对啊

第1个回答  2008-02-02
#include<stdio.h>
#include<math.h>
main()
{
int m,i,k,h=0,leap=1;
printf("\n");
for(m=2;m<=100;m++)
{ k=sqrt(m+1);
for(i=2;i<=k;i++)
if(m%i==0)
{leap=0;break;}
if(leap) {printf("%-4d",m);h++; //打印素数
if(h%10==0)
printf("\n");
}
leap=1;
}
printf("\nThe total is %d",h); //打印素数总数
}

参考资料:看看这个吧

第2个回答  推荐于2018-03-21
#include<stdio.h>
#include<math.h>
int main()
{
int a,b;
for(a=1;a<=100;a++)
{
for(b=2;b<=a-1;b++)
{
if(a%b!=0)
{
if((a-1)==b)
{
printf("%d\n",a);
}
else
{
continue;
}
}
else
{
break;
}

}
}
}本回答被网友采纳
第3个回答  2008-02-02
看看这个如何

#include <math.h>
#include <stdio.h>
main()
{
int n,a;
printf("plz input a number:\n");
scanf("%d",&n);
a=(int)sqrt((double)n);
printf("a=%d\n",a);
while(n%a!=0)
{
a--;
}
if(a==1) printf("Yes\n");
else printf("No\n");
}
第4个回答  2018-11-15
#include <stdio.h>

int main()
{
int n,i;
for(n=2;n<=100;n++)
{
for(i=2;i<=n;i++)
if(n%i==0)break;
if(i>=n)
printf("%d\n",n);
}
return 0;
}
第5个回答  2008-02-01
if(t==0)printf("%d",i);
改为
if(t)printf("%d",i);

for(i=2;i<=100;i++) //i=3
从3开始
相似回答