**題目要求:**輸入乙個整數n,判斷他是否為素數(質數)
**分析:**採用的演算法是,讓n除以i,如果n能被2~(n-1)之中的任何乙個整數整除,則表示n肯定不是素數,不必再繼續被後面的整數除,因此,可以提前結束迴圈。
**如下:
#include
"stdio.h"
void
main()
if(i
//跳出迴圈後判斷是因為1跳出的迴圈 還是因為2跳出的迴圈。如果是因為1那麼n不是素數;如果是因為2,那麼n是素數
printf
("不是");
else
printf
("是");
}
執行結果:
分析:
這個題中為什麼不在for迴圈中判斷並輸出是否為為素數呢?
1.如果在for迴圈中輸出是否為素數 那麼每迴圈一次就會輸出一次結果,這肯定不是我們想要的
2.遇到1.中的情況我們肯定會想到用break結束迴圈,想一下:(如下為設想的for迴圈部分)
//這部分是錯誤演示
for(i=
2;i1;i++)if
(n%i!=0)
}
如果n=15,迴圈開始 n%2=1,應該輸出「是」,可是15並不是素數,所以結果就不對了。 C語言 判斷是否為素數
include void main else if isprime 1 else else 當輸入的是 1時,結束程式的判斷 while a 1 編寫這個程式的時候遇到了兩個小問題,問題一是 當我單次輸入數字 5 判斷它是否為素數時,結果是正確的 而當我連續輸入數字判斷時,判斷到 5 後結果卻是錯的...
(C語言)判斷n是否為素數
題目 輸入乙個大於3的整數n,判斷它是否為素數。輸出yes no 例如,輸入4,輸出no 輸入7,輸出yes。錯誤輸入,則輸出error。所有輸出沒有回車符號。乙個只能被他自身或者1整除的數稱為素數 這裡還有乙個簡便的方法是 設乙個數m,m 不必被 2 m 1 之間的每乙個整數去除,只需被 2 之間...
C語言入門之判斷是否為質數
c語言永遠不會過時 其實學程式設計關鍵是學習其思想,如果你精通了一門,再去學其他的時候也很容易上手。c不會過時的,尤其是在unix linux操作平台上,學好c是必須的。c跟c 在很多方面也是相容的,c是c 的基礎。再者c能從很大的程度上幫你了解計算機的發展史,資料結構等方面的知識,很多軟體 甚至作...