當前位置:首頁 » 編程語言 » c語言判斷一個函數是否是素數
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言判斷一個函數是否是素數

發布時間: 2022-01-22 20:38:58

c語言判斷一個數是否是素數的函數

是不會繼續執行for循環 因為只要滿足了這條件就可以判斷不是素數 而只有循環一遍以後都不能滿足條件才能判斷是素數 所以return 1 應在for循環之外

㈡ c語言函數判斷素數

從1開始遍歷到該數的開方,如果找到一個數能整除該數,證明這不是個素數,看看以下代碼

#include<math.h> //頭文件為math.h
int isprime(int a)
{
int i;
for (i = 2; i <= sqrt((long double)a); ++i)
{
if (a % i == 0)
{
return 0; //能整除就返回不是
}
}
return 1; //都不能整除返回是
}

㈢ c語言編寫函數判斷素數

/判斷是不是素數

#include<stdio.h>

int prime(int a);//函數聲明

int main()

{

int n,i;

scanf("%d",&n);

if(prime(n)==1) //return返回值1

printf("prime");

else

printf("not prime") ;

}

int prime(int a)

{

int i;

for(i=2;i<a;i++)

if(a%i==0)

return 0;//a%i==0不成立

else

return 1;//a%i==0成立

}

(3)c語言判斷一個函數是否是素數擴展閱讀:

素數的演算法

1、素數:除了1和本身外無法被其他自然數整除的數,叫做素數,也稱質數,如:2,3,5,7一系列。

2、合數:比1大但不是素數的數稱為合數,如:8,9,10一系列。

3、特殊的數字:1和0既不是素數也不是合數。

4、演算法: 1>確定性演算法 2>隨機性演算法 3>Eratosthenes演算法。

㈣ 用c語言寫一個判斷數字是否是素數的函數


int isprime(int a)//判斷素數的函數
{
int i;
for(i = 2; i < a; i++)
if(a % i == 0)
break;
if(a == i)
return 1;
else
return 0;
}
int main(void)
{
int a;
if(isprime(a))
printf("%d是素數",a);

else

printf("不是素數");

printf(" ");

}

㈤ 如何用c語言編程判斷一個數是不是素數

方法一:

#include<stdio.h>

int main(){

int i,j;

printf("請輸入一個正整數。\n");

scanf("%d",&i);

if(i<2)

printf("小於2,請重新輸入。\n");

elseif(i%2==0)

printf("%d不是一個素數。\n",i);

else{

for(j=2;j<=i/2;j++){

if(i%j==0){

printf("%d不是一個素數。\n",i);

break;

if(j>i/2){

printf("%d是一個素數。\n",i);

break;

方法二:

#include<stdio.h>

int main(){

int a=0;

int num=0;

scanf("%d",&num);

for(inti=2;i<num-1;i++){

if(num%i==0){

a++;

if(a==0){

printf("YES\n");

}else{

printf("NO\n");

方法三:

#include"stdio.h"

int main(){

printf("\t\t\t\t\thelloworld\n");

int a,i;

do{

printf("inputnumberjudgeprimenumber:\n");

scanf("%d",&a);

for(i=2;i<a;i++)

if(a%i==0)break;

if(i==a)

printf("%d是素數\n",a);

else

printf("%d不是素數\n",a);

}while(a!=0);

㈥ C語言 實現一個函數,判斷一個數是不是素數

解釋如下:
#include"stdio.h"
#include"math.h"
main()
{
int
i,k,m;
//定義三個整形變數
scanf("%d",&i);
//輸入i的值
k=sqrt(i);
//把輸入的i的值的平方根的值賦值給k
for(m=2;m<=k;m++)
//從2開始進入循環,判斷從2到k之間的數是否能被i整除
if(i%m==0)
//如果能被2整除則用break跳出循環
break;
if(m>k)
//判斷通過循環後的m的值是否比k大,如果比k大則i是素數
printf("%d是素數
",i);
else
//如果不是則i不是素數
printf("%d不是素數",i);
getch();
}

㈦ #C語言#運用函數,判斷一個數是否為素數

sqrt(x)這個應該是開平方,你直接寫x就可以

㈧ 編寫一個判斷數n是否是素數的函數(c語言)

判斷一個數是否素數的函數可以這樣寫:

int chk(int x)
{
ok=1;
for (i=2;i<x && ok==1;i++) if (x%i==0) ok=0;
return ok;
}

把80撤分為兩個素數之和的程序代碼可以這樣寫:

main()
{
int i;
for (i=2;i<=40;i++) if (chk(i) && chk(80-i)) printf("80=%d+%d\n",i,80-i);
}

㈨ C語言編寫一個程序判斷一個數是否為素數急求

目的:判斷一個數是否為素數

#include<stdio.h>


intmain(void)


{


int m;


inti;


scanf("%d",&m);


for(i=2;i< m;i++) //2到(m-1)的數去除m


{


if(m%i==0)//判斷能否整除


break;

}

if(i== m)


printf("YES! ");


else


printf("No! ");


}

for循環的功能:

①若能整除,通過break跳出函數;

②若一直到m-1都不能整除,此時i再自增1到m,不滿足i< m跳出for循環,這時i= m。

(9)c語言判斷一個函數是否是素數擴展閱讀:


素數定理:



1、在一個大於1的數a和它的2倍之間(即區間(a,2a]中)必存在至少一個素數。



2、存在任意長度的素數等差數列。



3、一個偶數可以寫成兩個合數之和,其中每一個合數都最多隻有9個質因數。(挪威數學家布朗,1920年)。



4、一個偶數必定可以寫成一個質數加上一個合成數,其中合數的因子個數有上界。(瑞尼,1948年)。



5、一個偶數必定可以寫成一個質數加上一個最多由5個因子所組成的合成數。後來,有人簡稱這結果為(1+5)(中國潘承洞,1968年)。



6、一個充分大偶數必定可以寫成一個素數加上一個最多由2個質因子所組成的合成數。簡稱為(1+2)。