第1个回答 2012-03-23
#include<stdio.h>
void main()
{
int t,i,j,s;
for(i=2;i<=100;i++) //要从2算起,因为2也是素数
{
t=1;
for(j=2;j<i;j++) //j不要增加到i
if(i%j==0)
t=0;
if(t==1)
printf("%d ",i);
}
}本回答被提问者采纳
第2个回答 2012-03-23
重新给你写了一个 思路清晰一点:
#include "stdio.h"
#include "conio.h"
int isShuShu(int n)
{
int i=1;
for(i=2;i<=(int)n/2;i++)
{
if(n%i==0)
return 0;
}
return 1;
}
main()
{
int j=0;
for(j=1 ;j<=100;j++)
{
if(isShuShu(j))
{
printf("%d\n",j);
}
}
getch();
}
你看一下。main里面的for循环就是逐一判断1-100这些书是不是素数。
判断的函数是isShuShu();
判断素数的思路:
例如数n,我们用2,3,4,5……n/2 逐一去除他。一旦发现有约数。那么这个数肯定不是素数。返回0(False).否则2,3,4,5,一直到他的一半都不能除,证明只有1,和自身能整除,所以他是素数。返回1.(TRUE)