求能顯示100以內所有素數的c語言程式,關鍵是把思想傳遞

2022-03-10 02:33:36 字數 5370 閱讀 5608

1樓:匿名使用者

其實,這個問題只需要兩層迴圈就可以了。

具體如下:

由於要求出100以內的所有素數,那麼有兩種方法:第一、知道計算一個數是不是素數的公式,第

二、就是按個判斷了。顯然,對於第一個我們還沒有解決方法。那麼就剩第二個了。

既然挨個判斷了,那麼應該從最小的開始吧?最小的素數是2.這是眾所周知的。不解釋了。

那麼就從2開始迴圈判斷,到哪啊?到100!,這樣外層迴圈就確定了。

然後就是在迴圈內判斷了,我們知道素數是一個除了1和它本身之外沒有其他因子的數。那麼好了,就是說,如果我們能從2開始判斷,一直到比當前的判斷數小1的數,用當前數分別除以這些數,如果都不能整除,那麼就說明這個數是素數,如果有一個能夠整除,那麼就說明這個不是素數,這樣內層迴圈也結束了。

2樓:

1. 100以內所有素數,則最大值不超過1002. 利用素數的定義,當該數之下的所有數都不能被其整除時,得到素數x;

3. 利用迴圈語句,判定的素數將被輸出

#include

void main()}

3樓:匿名使用者

#include

#include "stdlib.h"

using namespace std;

bool isprime (int x)

}if (count+2 == x)

/*如果是質數,除了這個數本身和1,都不能被整除,那麼不能被整除的數的數量再加上1和這個數本身(也就是加2)等於這個數的值,那麼這個數就是質數。*/

return true;

else

return false;

}int main()

system ("pause");

return 0;}

c語言求100以內的素數思想

4樓:愛因斯坦波

#include

#include

void main()

printf("%d",m);

}判別m是否為素數的演算法是這樣的:讓m被2~根號m除,如果m不能被2~根號m之中任何一個整數整除,就可以確定m是素數。

5樓:異世血

#include

void main()}

編寫一個c語言程式求100以內所有素數的和

6樓:匿名使用者

#include

int prime(int n)//求素數過程,是返回1,不是返回0

void main() }

c語言,列出100以內的素數 5

7樓:胡說八道小鬼

**如下:

#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外)整除它,如果能就說明這不是素數。

8樓:

#include

#include

//判斷整數是否為素數

int isprime(int n)

int main()

printf("\n");

return 0;}

9樓:匿名使用者

for(n=2;n<=100;n++) 是為了遍歷100以內的數,保證100以內的每個數都可以檢測一下是不是為素數,for(i=2;i=n)?這個是判斷因數是不是大於等於n,如果是,說明他就是素數了,列印出來同時加個製表符的空格。

10樓:匿名使用者

因為你用的是for迴圈語句,for迴圈首先要有初始而後有終結因為你要求100以內的素數,而素數從二開始,所以第一個語句for迴圈。第二個for迴圈是為了確定他是否有因子。因為一個數的因子只可能小於他的本身。

如果在i

其次這道題中的break語句要注意了,注意 break語句的使用。

11樓:匿名使用者

第一個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

c語言編一個程式,求100以內的全部素數

12樓:匿名使用者

一百以內的素數除能被1和它本身整除外不能被任何數整除的數就是素數:

void main() }

13樓:匿名使用者

#include

#include

#define n 10000000 //你要求的範圍的最大值int a[n];

void prime(long n) //用篩法將不是素數的值置0int main()

return 0;

} 可以輸出10000000以內的所有素數,計算過程不到1秒,但輸出的時候就比較多了

14樓:在世貿天階灌籃的高飛燕草

#include

int prime(int n)//求素數過程,是返回1,不是返回0

void main() }

15樓:真是拉登

int i,j,flag,count;

int prime[100];

count=0;

for( i = 1 ; i < 101 ;i ++ )}if ( flag == 0 || i == 2 )}

c語言程式設計、求100以內所有質素數

16樓:祁日答涵桃

樓主大括號都未能匹配,有三個,編譯就通過不了的。

剛寫了份**,已除錯通過,供樓主參考:

#include

main(void)

for(t=2;

t<=i/2;

t++)

if(t

>i/2)

}printf("\n");

return0;}

輸出的結果為:2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,

再說說樓主**中一些錯誤:

1.之前提到編譯上就不能通過。個數未能匹配。

2.if(100%i!=0)

break;

該語句的含義是100除以i的餘數不等於0則跳出迴圈,當為1時,就已經跳出迴圈了。而且這對於質素的判斷是毫無意義的,可以刪除。

3.for(t=1;t<=i;t++)

質數的判斷的話,t應該是從2開始計數的,否則i%1肯定是等於0的。應修改為for(t=2;

t<=i;

t++)。此外,這裡可以參考我的**,t<=i/2即可,用以提高提升效率。

希望對樓主有所幫助。謝謝。

17樓:失落血天使

if(100%i!=0)

break;

這一段·····直接跳出for迴圈··········你是從1開始迴圈,也就是當i=1的時候就已經結束迴圈·······然後執行return 0;然後你程式就結束了········

if(i==100)

for(t=1;t<=i;t++)

if(i%t==0)

break;

這一段是啥意思,········這一段和

if(i==100)

}意思一樣是一個整體

大概程式應該是這樣

#include

#include

bool su(int a)

main()

這個我沒執行過·····不過邏輯是沒錯的·········

18樓:匿名使用者

#include

main()

if(flag == 1) printf("%d ",i);

}printf("\n\n");

return 0;}

19樓:匿名使用者

int p

if(100%i == 0) break;

p = 1;

if(i != 100)

for()

if(p) pintf();

求一個用c語言程式設計的一個程式。讓輸出一1000以內的全部素數

20樓:雲南新華電腦學校

素數的判斷:除了1和它本身以外不再有其他的因數。

此程式可按照以下流程:

1、主函式中進行迴圈,從2到1000

2、如果當前迴圈的數是素數,就將其輸出

判斷一個數num是否是素數,可按照以下流程:

1、迴圈,從2到num-1

2、如果當前迴圈的數能被num整除,則num不是素數3、沒有num能整除的數,表明num是素數**如下:

#include

int isprime(int num);

int main()

int isprime(int num)

用c語言編寫一個程式,輸出100以內的所有的素數.要求每行僅輸出5個素數.

21樓:

樓上的效率差點,把內層for迴圈的j

22樓:匿名使用者

int i, j, n=100, m=1, temp=1;

for(i=2;i=5)

m++;}}

vb題 程式設計計算100以內素數的和

private sub command1 click dim i as integer,j as integer,k as integer for i 2 to 100 for j 2 to i if i mod j 0 then exit for end if next if i j then k...

程式設計求個位數為5或7的200以內的素數

php實現具體 如下 created by phpstorm.user administrator date 2018 12 2 time 20 18 程式設計求個位數為5或7的200以內的素數 判斷是否為素數 質數 基本判斷思路 在一般領域,對正整數n,如果用2到 之間的所有整數去除,均無法整除,...

求款1000以內價效比最高的顯示器

1 顯示器推薦型號 aoc i2379v ws 23寸 參考 799元 推薦理由 二線品牌高價效比 窄邊框 ips 799元的aoc i2379v ws 23寸 顯示器 總結 aoc是近年來比較熱門的二線高價效比顯示器品牌,aoc i2379v ws液晶顯示器尺寸為23寸,擁有vga dvi雙介面,...