c語言學習:判斷一個數(shù)是否為素數(shù)
導讀現(xiàn)在很多人都在進行c語言的學習,那么判斷一個數(shù)是否為素數(shù)呢?今天小編為大家講講幾種辦法進行判斷是夠為素數(shù)的方法,希望能夠?qū)Υ蠹矣兴鶐椭?。材?工具c語言方法while語句法:#include<stdio.h>voidmain(){inti,n;//定義數(shù)據(jù)printf(請輸入n:);//輸出語句scanf(%d,&n);//輸入語句i=2;//定義i的值while(i<n){//判斷該數(shù)是否有公因數(shù)if(n%i==0)//break;i++;}if(i==n)printf(%d...
現(xiàn)在很多人都在進行c語言的學習,那么判斷一個數(shù)是否為素數(shù)呢?今天小編為大家講講幾種辦法進行判斷是夠為素數(shù)的方法,希望能夠?qū)Υ蠹矣兴鶐椭?p>材料/工具
c語言
方法
while語句法:
#include
void main(){int i,n;//定義數(shù)據(jù)printf("請輸入n:");//輸出語句scanf("%d",&n);//輸入語句i=2;//定義i的值while(i輸出結(jié)果如下圖:
if語句法:
#includevoid main() {int n,r,i; //定義變量scanf("%d",&n); //輸入語句//將輸?shù)臄?shù)字從2開始判斷是夠有公因數(shù)。for(i=2;i<=n-1;i++) {r=n%i; if(r==0) break;}if(i>=n) printf("yes
"); else printf("no
"); }輸出結(jié)果如下圖:
初等數(shù)論法
#include #include #define YES 1#define NO 0int IsPrime(int N){int i, j;if (N == 2)return YES;elseif (N < 2 || N % 2 ==0)return NO;else{j = (int)sqrt(N + 1);for (i = 3; i <= j; i = i + 2)if (N % i == 0)return NO;}return YES;}void main(){int N;printf("Please input a number: ");scanf("%d", &N);if (IsPrime(N) == YES)printf("%d is a prime number
", N);elseprintf("%d is not a prime number
", N);}輸出結(jié)果如下圖:
為你推薦