所在的位置: C++ >> C++介绍 >> C语言素数判断

C语言素数判断

北京中科医院正规吗 https://www.sohu.com/a/110057289_119104/

①目标

判断一个数字区间里的素数

有几个?有哪些?

素数即除了1和自身

不能被其他数整除的数。

②命令行

#includestdio.h

#includestdlib.h

#defineMAX

~

③定义函数

intfun(inta,intb[MAX])

{

inti,j,k=0;

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

/*因为素数因数分解的唯一性,1不是素数,故从2开始遍历*/

{for(j=2;ji;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用于数组下标计数*/

}

returnk;

/*k表示素数的个数*/

}

~

④主函数(调用)

voidmain()

{inta,i,s;

intb[MAX];

printf("输入一个整数:");

scanf("%d",a);

/*输入a,表示求0到a之间的素数*/

s=fun(a,b);

/*素数个数s,储存在数组b[i]中*/

for(i=0;is;i++)

{if(i%10==0i!=0)

/*每行输出10个数1个回车,

不足10个数表示最后一行不用回车*/

printf("\n");

printf("%5d",b[i]);}

}




转载请注明:http://www.aierlanlan.com/rzfs/4912.html