#include<stdio.h>
int main()
{
int i,j;
int count=0;
for(i=2;i<100;i++)
for(j=2;j<=i/2;j++)
if(i%j==0)//如果i能被j整除 就不是質數 退出迴圈
break;
if(j>i/2)
count++;
printf("%-3d",i);
if(count%5==0)//當每一行有5個數時 換行
printf("\n");
}
return 0;
for(j=2;j<=i/2;j++)中的 j<=i/2是表示 從j=2開始遍歷到j=i/2 看看2~i/2中能否整除i
如果都不能 說明i是質數(也就是j>i/2)
如果有1個及以上能整除i 說明i不是質數
for()
//for迴圈結束之後 j的值是大於i/2的 因為for迴圈的條件是:j<=i/2
//因此 當j>i/2時 for迴圈結束
這裡當且僅當2~i/2都不能整除i時 也就是j>i/2 才說明i是質數
#include<stdio.h>
int main()
{
int i,j;
int count=0;
for(i=2;i<100;i++)
{
for(j=2;j<=i/2;j++)
if(i%j==0)//如果i能被j整除 就不是質數 退出迴圈
break;
if(j>i/2)
{
count++;
printf("%-3d",i);
if(count%5==0)//當每一行有5個數時 換行
printf("\n");
}
}
return 0;
}
for(j=2;j<=i/2;j++)中的 j<=i/2是表示 從j=2開始遍歷到j=i/2 看看2~i/2中能否整除i
如果都不能 說明i是質數(也就是j>i/2)
如果有1個及以上能整除i 說明i不是質數
for()
{
}
//for迴圈結束之後 j的值是大於i/2的 因為for迴圈的條件是:j<=i/2
//因此 當j>i/2時 for迴圈結束
if(j>i/2)
這裡當且僅當2~i/2都不能整除i時 也就是j>i/2 才說明i是質數