題目:
方法一:在2到n-1之間任取一個(gè)數(shù),如果n能被整除則不是素?cái)?shù),否則就是素?cái)?shù)
代碼示例如下:
#include <stdio.h>
int main()
{
int i,n;
printf("Please input: ");
scanf("%d",&n);
for(i=2;i<=n-1;i++)
{
if(n%i==0){
break;
}
}
if(i>=n)
{
printf("This is a prime!\n");
}
else
{
printf("This is not a prime!\n");
}
return 0;
}
代碼運(yùn)行結(jié)果如下:
方法二:在2到n/2之間任取一個(gè)數(shù),如果n能被整除則不是素?cái)?shù),否則就是素?cái)?shù)?
代碼示例如下:
#include<stdio.h>
int main()
{
int n,i;
printf("Please input numbers: ");
scanf("%d",&n);
for(i=2;i<=n/2;i++)
{
if(n%i==0)
{
printf("This is not a prime!\n");
break;
}
}
if(i==n/2+1)
{
printf("This is a prime!\n");
}
return 0;
}
代碼運(yùn)行結(jié)果如下:
方法三:在2到sqrt(n)之間任取一個(gè)數(shù),如果n能被整除則不是素?cái)?shù),否則就是素?cái)?shù)?
#include<stdio.h>
#include <math.h>
int main()
{
int i,j,n;
printf("Please input numbers: ");
scanf("%d",&n);
j=(int)sqrt(n);
for(i=2;i<=j;i++)
{
if(n%i==0)
{
break;
}
}
if(j<i)
{
printf("%d is prime!\n",n);
}
else
{
printf("%d is not prime!\n",n);
}
return 0;
}
代碼運(yùn)行結(jié)果如下:
?
方法四:質(zhì)數(shù)分布的規(guī)律:大于等于5的質(zhì)數(shù)一定和6的倍數(shù)相鄰。例如5和7,11和13,17和19等
代碼示例如下:
#include<stdio.h>
#include<math.h>
bool isPrime_3(int num)
{
if (num == 2 || num == 3)//兩個(gè)較小數(shù)另外處理
return true;
if (num % 6 != 1 && num % 6 != 5) //不在6的倍數(shù)兩側(cè)的一定不是質(zhì)數(shù)
return false;
}
int main()
{
int i,num;
for (i = 2; i <= sqrt(num); i += 6) //在6的倍數(shù)兩側(cè)的也可能不是質(zhì)數(shù)
{
if (num % i == 0 || num % (i + 2) == 0)
return false;
}
//排除所有,剩余的是質(zhì)數(shù)
return true;
}
編者注:以上對(duì)本小題的代碼編寫的多種方法,歡迎大家收藏借鑒并轉(zhuǎn)發(fā);
? ? ? ? ? ? ? ?以上代碼僅供參考,如有問題歡迎大家在留言區(qū)批評(píng)指正;
? ? ? ? ? ? ? ?版權(quán)所有,翻印必究,如有雷同純屬巧合,轉(zhuǎn)載請(qǐng)注明出處。
? ? ? ? ? ? ? ?By CRH380AJ2808 2022.04.27
————————————————文章來源:http://www.zghlxwxcb.cn/news/detail-785941.html
版權(quán)聲明:本文為CSDN博主「CRH380AJ2808」的原創(chuàng)文章,遵循CC 4.0 BY-SA版權(quán)協(xié)議,轉(zhuǎn)載請(qǐng)附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/JH13thpig/article/details/124434094文章來源地址http://www.zghlxwxcb.cn/news/detail-785941.html
到了這里,關(guān)于C語言判斷素?cái)?shù)的三種方法 判斷素?cái)?shù)(質(zhì)數(shù))的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!