①目标
判斷一個數字區間裡的素數
有幾個?有哪些?
素數即除了1和自身
不能被其他數整除的數。
~
②命令行
#include< stdio.h>
#include< stdlib.h>
#define MAX 100
~
③定義函數
int fun (int a,int b[MAX])
{
int i,j,k=0;
for(i=2,i<=a;i )
/*因為素數因數分解的唯一性,1不是素數,故從2開始遍曆*/
{for(j=2;j<i;j )
/*除了1和本身i,之間的數全部遍曆*/
if(i%j==0)break;
/*1到i之間有數j能整除i,則i不是素數*/
if(j>=i)aa[k]=i;
/*一直遍曆到j>=i,即1到i之間沒有數能整除i,則i是素數。同時将素數存入數組aa[k]中。*/
k ;
/*k用于數組下标計數*/
}
return k;
/*k表示素數的個數*/
}
~
④主函數(調用)
void main()
{int a,i,s;
int b[MAX];
printf("輸入一個整數:");
scanf("%d",&a);
/*輸入a,表示求0到a之間的素數*/
s=fun(a,b);
/*素數個數s,儲存在數組b[i]中*/
for(i=0;i<s;i )
{if(i==0&&i!=0)
/*每行輸出10個數1個回車,
不足10個數表示最後一行不用回車*/
printf("\n");
printf("]",b[i]);}
}
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!