c 題目 輸入數判斷是否為素數

2022-02-25 20:32:26 字數 4899 閱讀 7404

1樓:匿名使用者

lude "stdlib.h"

int fun(int p)

void main()

//開始迴圈

while(1)

else

}//詢問是否繼續

retry: printf("continue?(y/n)");

//清空緩衝區,以防之前輸入整數時按的回車鍵被這裡誤接收了fflush(stdin);

scanf("%c",&s);

//輸入y或者y則繼續

if(s=='y' || s=='y')

continue;

//輸入n或者n則退出

else if(s=='n' || s=='n')break;

//輸入了其它字元則提示

else

}fclose(fp);}

2樓:在梯田捕蝶的秋海棠

bool fun (int x)

else

}}return breturn;

}呼叫這個函式就知道傳入的x是否為素數,返回值為true則為素數

3樓:匿名使用者

#include

using namespace std;

#include

int mainn()

使用者輸入一個自然數判斷是否為素數,用c++編寫

4樓:乄勿言

質數又稱素數。指在一個大於1的自然數中,除了1和此整數自身外,沒法被其他自然數整除的數。

貌似沒那麼複雜吧···我寫的,完全按照定義來的#include

int main()

if(i==num)

printf("%d為素數",num);

else printf("%d為非素數",num);}}

5樓:子爵先生

樓上的好像判斷出來1是質數吧。

#include

using namespace std;

bool prime(int num)

6樓:馨兒_青衣

#include

#include

void main()

怎樣用c++判斷一個數是否為素數?

7樓:思念是一種醉過

方法如下:

首先先定義一個函式用於判斷一個數是否是素數,接著主函式接受鍵盤輸入,並呼叫該函式判斷輸入的數是否是素數。

1、補充:素數就是隻能被1和自身整除的數。故判斷n是否是素數,可以用n依次除以n-1,n-2……2,如果能整除則不是素數,否則是素數。

2、示例:

#include

#include

using namespace std;

int isfun(int n)

return 1;

} int main( )

8樓:

判斷一個整數m是否為素數只需被2~根號m之間的每個數去除就可以了。

下面輸入一個整數判斷其是否為素數的程式,希望樓主理解其演算法,#include

#include

bool is_prime(int n)

void main()

{ int n;

cout << "請輸入一個正整數:";

cin >> n;           //從鍵盤輸入一個正整數if (n < 2)

如何用c++程式設計,輸入一個整數m,判斷其是否為素數。

9樓:匿名使用者

思路:定bai義一個函式,傳入引數n,從du2到n-1依次遞zhi增整除n如果能整除返回

dao0,表

回示n不是素數答,否則返回1,表示n是素數。

參考**:

#include

using namespace std;

int fun(int n){

int i;

for(i=2;i>n;

if(fun(n)) cout<

10樓:掌俏合白亦

#include

void

main()

if(count==0)cout<<"是素數"

11樓:_誠兒

#include

using namespace std;

class cnum

else}}

void show()

12樓:

#include

#include

void main()

if (i>=k+1)

else }} }

c語言 判斷一個數是否為素數???

13樓:宰桂枝汗媚

不矛盾,首首先這個題目給的結果是相反的,但這不是重要的,反回來就行了。第一個i<=k是作為一個限定條件程式只要求到k就行了,減少計算量。如果這個數不是素數,它必然滿足整個for迴圈語句,如果不滿足的話i將等於k加1,讀者可自己證明,注意i++。

14樓:井鬆蘭益黛

f是一個標記,當他的值為1時,說明他能被某個不為1和它本身的數整除,也就是說你輸入的數不是素數,

至於那個i<=k和i>=k+1,如果你輸入的那個數m一直都不能被從2到sqrt(m)整除時,經過迴圈後i=k+1,就滿足i>=k+1,如果你輸入的數m能被從2到sqrt(m)的某個數整除時,i就不會》=k+1

15樓:公孫淑敏魯卿

其實,很簡單假如n

的算術平方根為

r,即n

=r*r如果n

不是素數,那麼就至少有一個因子

a,即n

=a*b

2

2到r直接的因子

16樓:富鵬同

你利用的是這個迴圈:讓一個待檢測的數依次除以2,3,4……一直到該數的平方根,如果能整除就說明該數不是素數。

依照你的迴圈for(i=2;i<=k;i++),注意,後面有個i++,所以如果該數是素數,那麼迴圈到i=sqrt(m)時,m仍不會被整除,因此i會自增1個單位,由此有i>k,此時就可以斷定m是素數了

o(∩_∩)o

17樓:

依照你的迴圈for(i=2;i<=k;i++),注意,後面有個i++,所以如果該數是素數,那麼迴圈到i=sqrt(m)時,m仍不會被整除,因此i會自增1個單位,由此有i>k,此時就可以斷定m是素數了

18樓:育知同創教育

#include"stdio.h"

#include"math.h"

main()

判斷是否為素數,只需要判斷它是否只能被1和它本身整除。

19樓:匿名使用者

#include

#include

void main()

c語言題,任意輸入一個正整數,判斷是否為素數

20樓:山火映寒

網上抄的抄**,但是看了襲

一下,思想還是對的,迴圈用比自身小的數來做除。

#include

void main()

if(i==n)

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

else

printf("%d is no prime\n",n);}

用c++程式設計:輸入一個數,判斷其是不是素數

21樓:小木頭是我

用一個數分別去除2到sqrt(這個數),如果能被整除, 則表明此數不是素數,反之是素數。

22樓:菠蘿知天下

#include

using namespace std;

int main()

}cout<

return 0;}

23樓:匿名使用者

這個用不著指標和陣列吧,一個迴圈解決問題:

#include

using namespace std;

int main();

if (c=1)

cout<<"shi";

else

cout<<"bushi";

system("pause");

return 0;}

24樓:千鋒教育

void main (void)

iostream.h

iomath.h

{int x,y,t=1;

cin<>"這是一個素數">>endle

25樓:

#include "stdio.h"

void main()}}

程式設計題: 輸入一個整數x ,判斷該數是否為素數,若x為素數則輸出「yes!」,否則輸出「no!」

26樓:匿名使用者

#include

//#include用備選方案,要加這回個頭答檔案int main()

printf("yes!");

return 0;}

27樓:酒來碗幹

#include

void main()

輸入任意數判斷它是否是素數,輸入任意一個數,判斷它是否是素數 free pascal

program sushu varn,i,j integer begin write please input n readln n j 0 for i 2 to round sqrt n doif n mod i 0 then inc j if j 1 then write yes else wr...

c語言題編寫判斷數是否是素數的函式

include int prime int a void main void int inputnumber int returnnumber printf please input a number scanf d inputnumber returnnumber prime inputnumbe...

c 判斷數是否為質數,C 判斷一個數是否為質數

方法一 將m被 2 m 1 之間的每一個整數去除,如果都不能被整除,所以m是一個質數。方法二 將m被 2 m之間的每一個整數去除。如果m不能被 2 m 間任一整數整除,m必定是質數。兩段 的輸出結果相同。輸入一個整數 1 所以1是質數。輸入一個整數 97 所以97是質數。輸入一個整數 10 所以10...