將100到200之間的素數輸出c語言程式

時間 2021-12-23 03:59:01

1樓:半清醒丶不言語

**如下:

#include

int main()

int i = 0;

for (i=100; i<=200; i++)int j = 0;

for (j=2; j<=i-1; j++)if (i%j == 0)

break;

if (j>=i)

printf("%d",i);

return 0;

結果如下:

拓展資料:

素數,除了1 和它本身不能被其他數整除的數。

2樓:匿名使用者

思路:1,從2開始到n-1一個一個除

2,從2開始一直除到n/2

3.從2開始除到開方

以下是第3種思路,且沒用函式

#include

#include

void main()

if (n%10==0)

printf("\n");

} printf("\n");}

3樓:擁抱

應該是對素數的定義沒有理解吧。

素數,是定義為在大於1的自然數中,除了1和它本身以外不再有其他因數。

簡而言之,素數就是隻能被1和它自己相乘得到的數。所以,除了1和它自己之外,它對其它數取餘數,結果都不是0。

同時,無論什麼數,除了它自己之外,最大的因數肯定是它的一半,所以只需要查詢到它的一半就可以了,不必從1查詢到它自己。而且,這裡是找素數,如果它的因數包括它自己的一半與數字2的話,那它也不會是素數了,所以查詢的界限定為比如 i/2 是不會有遺漏的。

至於你的原來的**裡為什麼是它自己開平方,我數學記得不多了,不是太清楚。

然後,就是根據定義去判斷一個數是不是素數,那麼,就必須讓它與從2到它的一半的所有的數的餘數都不為0,反應到**裡就是不僅僅要 「i % n != 0」,而且還要全部能除的數都除一遍,也就是「 n == k」,這個時候,才能確定這個數是素數了。

#include

#include

int main()}}

printf("\n");

return 0;

}輸出截圖:

還有一張是把 i 的初始值改為 3 的輸出截圖,可以說是很規整了!

如有幫助,煩請點採納,謝謝!

4樓:匿名使用者

又是素數 貌似剛開始學程式都是素數

這個程式一開始就有問題

c語言輸出100-200之間的素數

5樓:知識慧

邏輯錯誤,準確位置為14行,正確**如下:

#include

int main()

}if (j>=i)

}return 0;

}擴充套件資料:

質數又稱素數。一個大於1的自然數,除了1和它自身外,不能被其他自然數整除的數叫做質數;否則稱為合數。

質數的個數是無窮的。歐幾里得的《幾何原本》中有一個經典的證明。它使用了證明常用的方法:

反證法。具體證明如下:假設質數只有有限的n個,從小到大依次排列為p1,p2,……,pn,設n=p1×p2×……×pn,那麼,

是素數或者不是素數。

如果為素數,則

要大於p1,p2,……,pn,所以它不在那些假設的素數集合中。

如果 為合數,因為任何一個合數都可以分解為幾個素數的積;而n和n+1的最大公約數是1,所以不可能被p1,p2,……,pn整除,所以該合數分解得到的素因數肯定不在假設的素數集合中。因此無論該數是素數還是合數,都意味著在假設的有限個素數之外還存在著其他素數。所以原先的假設不成立。

也就是說,素數有無窮多個。

其他數學家給出了一些不同的證明。尤拉利用黎曼函式證明了全部素數的倒數之和是發散的,恩斯特·庫默的證明更為簡潔,哈里·弗斯滕伯格則用拓撲學加以證明。

6樓:顛倒的世界

1、首先開啟vc6.0, 新建一個vc專案,新增標頭檔案,如下圖所示。

2、然後新增main函式,如下圖所示。

3、這時定義 i, j,count三個變數,如下圖所示。

4、然後使用第一層for迴圈,使用第二層for迴圈。

5、如果j能被i整除,就跳出內層迴圈,判斷迴圈是否提前跳出,如果 j < i 說明在 2~j之間,i有可整除的數。

6、最後使用printf列印出i,用count計數,每五個數換行。

7、最後執行程式,如下圖所示就完成輸出了。

7樓:麴生軒轅晨希

#include

void

main()}

8樓:惡俗你去咯某哦

質數又稱素數。一個大於1的自然數,除了1和它自身外,不能被其他自然數整除的數。

9樓:匿名使用者

你每次判斷完一個數之後,應該要把count重新置0。

if(count==0) printf("%d\n",n);

else count=0;

10樓:yi指liu沙

我這有個c++語言的**,你自己改改就行了#include

#include

#include

using namespace std;

int main()

}if(flag==true)

}for(i=0;i

cout<

return 0;}

11樓:擁抱

應該是對素數的定義沒有理解吧。

素數,是定義為在大於1的自然數中,除了1和它本身以外不再有其他因數。

簡而言之,素數就是隻能被1和它自己相乘得到的數。所以,除了1和它自己之外,它對其它數取餘數,結果都不是0。

同時,無論什麼數,除了它自己之外,最大的因數肯定是它的一半,所以只需要查詢到它的一半就可以了,不必從1查詢到它自己。而且,這裡是找素數,如果它的因數包括它自己的一半與數字2的話,那它也不會是素數了,所以查詢的界限定為比如 i/2 是不會有遺漏的。

至於你的原來的**裡為什麼是它自己開平方,我數學記得不多了,不是太清楚。

然後,就是根據定義去判斷一個數是不是素數,那麼,就必須讓它與從2到它的一半的所有的數的餘數都不為0,反應到**裡就是不僅僅要 「i % n != 0」,而且還要全部能除的數都除一遍,也就是「 n == k」,這個時候,才能確定這個數是素數了。

#include

#include

int main()}}

printf("\n");

return 0;

}輸出截圖:

還有一張是把 i 的初始值改為 3 的輸出截圖,可以說是很規整了!

如有幫助,煩請點採納,謝謝!

12樓:匿名使用者

#include

int main()

if(count==0)

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

}return 0;}

c語言流程圖問題(將100~200之間之間的素數輸出)

13樓:杜哥是個小天才

#include

#include

int main()

if( sqrt(i) < j )

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

}printf("\n");

return 0;

}拓展資料c語言是一門通用計算機zhi程式語言,應用廣泛。daoc語言的設計目標是版提供一種能權

以簡易的方式編譯、處理低階儲存器、產生少量的機器碼以及不需要任何執行環境支援便能執行的程式語言。

儘管c語言提供了許多低階處理的功能,但仍然保持著良好跨平臺的特性,以一個標準規格寫出的c語言程式可在許多電腦平臺上進行編譯,甚至包含一些嵌入式處理器(微控制器或稱mcu)以及超級電腦等作業平臺。

14樓:修羅丶清

這個程式我們需要用if語句和for語句,核心拾從100-200一個數一個數判斷,當成立時則打內印出來,具體代容碼如下。

#include "stdafx.h"

#include

#include

#define m 200

using namespace std;

bool p[m + 1];

int main()

效果圖如下

c語言程式程式設計:輸出100到200間的全部素數,每行輸出5個素數。

15樓:匿名使用者

#include

#include

int ss(int n) /*檢查n是否為素數,如果是則返回1,否則返回0*/

int main(void)

return 0;}

16樓:匿名使用者

#include "stdio.h"

main()

if(leap)

}printf("\nthe total is %d\n",h);

system("pause");}

17樓:

#include

int main()

if (flag)

if (count == 5)

}return 0 ;}

18樓:

首先來理解素數的概念:

2, 3, 5, 7, 11, 13, 17, 19, 23, 29…………

這些除了他本身和1不能被任何其他數字整除的數字叫做「素數」,又叫「質數」。

那麼程式設計思路就有了:

那麼我們在外面再加一圈迴圈n,讓 n 的取值範圍在 100 <= n <= 200 之間,然後巢狀:

讓 i 在 1 < i < n 的範圍內進行迴圈,然後用 n % i,如果途中發現有非 0 的值,則表示該值非質數,讓s = 1終斷迴圈。

在迴圈的最後,判斷 s :如果 s 的值為0,則輸出n。

然後(還是在迴圈內)判斷n的值:若 n % 5 結果為4,則輸出"\n"。

這就是全部的演算法,我已經寫得很詳細了 - -

19樓:

#include

#include

int main()

if(flag) }

return 0;}

c語言 輸出1到100之間的全部素數

有三種方法 1 輸出1 100以內的素數 2 同樣,也是輸出1 100以內的素數,這個構造一個陣列,將其所有元素初始化為1,表示素數,這時取x從2開始,到100以內做迴圈。若x為素數,即prime x 0,使得每個i x位置元素置0 prime i x 0 表示為非素數,迴圈結束前x 1。3 該方法...

c程式設計 求100到200之間的素數 解釋一下

include void main 把i 2寫到第二個for裡邊就好理解了,無論你前邊初始化為幾都沒有關係的,for迴圈就是這樣用的。若在迴圈之前定義i的值,它定義的就是全域性的變數,當第一個for執行第一個迴圈m 100之後i的值就是3了不會回到2,第二的迴圈m 101後就是4了,以此類推,那麼就...

設計程式,輸出100到200之間不能被7整除的數

include void main 程式我已經除錯,沒有問題,輸出100 200之間不能被7整除的數輸出程式。若輸出輸出100 200之間能被7整除的數,則i 7 0改為i 7 0即可。輸出100到200之間能被3整除不能被4整除的數並求和,c程式要怎麼編寫?102能被3整除,所以從102開始,步長...