1樓:胡說八道小鬼
**如下:
#include
int main(void)
int i,j,k;
printf("%d\n",2);2肯定是素數[em02]for(i=1;i<=100;i+=2)
for(j=2;jif(i%j==0) break;
if(i==j)
printf("%d\n",i);
return 0;
從console輸入乙個數,判斷這個數是否為素數(質數)。
**如下:
判斷過程**如下:
素數是指在乙個大於1的自然數中,除了1和此整數自身外,沒法被其他自然數整除的數。要判斷這個數是不是素數,需要將比它小的數(除1外)整除它,如果能就說明這不是素數。
2樓:
#include
#include
//判斷整數是否為素數
int isprime(int n)
int main()
printf("\n");
return 0;}
3樓:匿名使用者
for(n=2;n<=100;n++) 是為了遍歷100以內的數,保證100以內的每個數都可以檢測一下是不是為素數,for(i=2;i=n)?這個是判斷因數是不是大於等於n,如果是,說明他就是素數了,列印出來同時加個製表符的空格。
4樓:匿名使用者
因為你用的是for迴圈語句,for迴圈首先要有初始而後有終結因為你要求100以內的素數,而素數從二開始,所以第乙個語句for迴圈。第二個for迴圈是為了確定他是否有因子。因為乙個數的因子只可能小於他的本身。
如果在i 其次這道題中的break語句要注意了,注意 break語句的使用。 5樓:匿名使用者 第乙個for是從2迴圈到100 為什麼沒有0和1呢 因為我們已經知道0和1不可能是素數 所以我們不用在迴圈裡面加入這兩個數 第二個for是因子 因子就是除數 當然不能為0 為1沒有意義 所以當然是從2開始迴圈 你主要要理解求素數的演算法 用這個數從2開始除起一直到他本身(或者是他的開平方) 每次除數加1 如果每次的餘數都不為0 說明這個數是素數 我們從程式一步一步看起 第一步n=2 往下執行 i=2 然後進入if判斷語句 2%2==0 跳出迴圈 然後因為2>=2 所以輸出了2 安然而止 if i n 的意思是判斷被除數是否小於除數,如果小於當然是不用再進行下去了。這個式子寫成if i n 2 更好,可以少算幾步。 每次從if n i 0 break 迴圈裡逃出來迴圈都能有2中結果,一 被i整除了,直接被break跳出i迴圈,這時程式還會往下跑,就有必要遮擋下對n的列印 我... 例 判斷m是否素數。n s流程圖 include main 例 求100至200間的全部素數。include main if n 5 0 printf printf 我只說思路,就不寫 了,太麻煩。偷懶 定義乙個變數i,從2開始,到你要求的範圍最大數比如說100為止,定義另乙個變數,j,從2開始,到... 我不知道如果m是素數的話算不算是第乙個,我這邊算是第乙個的 如果有疑問可以再提問的哦 include stdio.h int isprime int n int main int argc,char const ar if j n printf 數 d的第 d的素數是 d!n m,n,i retur...c語言 輸出100以內的素數 break的用法為什麼會有這
c語言求素數,c語言求素數的演算法
用c語言求素數