day6

题目:判断101-200之间有多少个素数,并输出所有素数。

one:

#include

#include

main()

{

int i,j,s,leap;

leap = 1;

s = 0;

for(i = 101;i <= 200;i++)

{

for(j=2;j<=sqrt(i+1);j++)//i+1是防止sqrt(i+1)为小数时直接取整数部分,导致漏数。

{

if(i%j==0)

{

leap=0;

break;

}

}//如果是素数leap=1;如果不是,leap=0,跳出循环。

if(leap)//用leap的值来判断是不是素数,l

{

printf("%d\n",i);

s++;

}

leap = 1;//每次内层循环后重置leap=1,保证内循环的leap为1

    }

    printf("The total prime number is %d",s);

}

two:

#include

#include

main()

{

 int m,i,k,h=0,leap=1;

 printf("\n");

 for(m=101;m<=200;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);

}

你可能感兴趣的:(day6)