慕蓋茨3547484
2017-07-12 22:09:46
for(m=2; m<=50; m++)
? ?{
for(n=2; n<m; n++)
? ? ? ?{
? ? ? ? ? ?if( ? ?m%n==0 ? ?) ?
? ? ? ? ? ? ?break;
}
? ? ? ?if(m == n)
? ? ? ? ? ?printf("%d ?", m);
}那只要m和n相等就都可以輸出了啊。第二個循環條件,只要n<m,那就得一直循環它帶有的執行過程,可是,n>m之前總要n=m啊,那第二個循環條件就是假的,會直接執行第一個循環條件的執行過程,可是,那這樣的話豈不是所有的數字都是素數了。。
2 回答


qq_知足_25
TA貢獻4條經驗 獲得超0個贊
素數的定義是只有本身和一整除,在第二個循環中是遍歷了從2到當前的數字,如果能被除進就不是素數,還會執行第二條IF語句的,改變M的值,到最后找到素數輸出即可,就是這樣的一個程序
- 2 回答
- 0 關注
- 2041 瀏覽
添加回答
舉報
0/150
提交
取消