c语言求素数的函数,c语言中求素数的函数

dfnjsfkhak 15 0

大家好,今天小编关注到一个比较意思的话题,就是关于c语言素数函数问题,于是小编就整理了4个相关介绍c语言求素数的函数的解答,让我们一起看看吧。

  1. c语言编程题:求100到300之间的所有素数?
  2. C语言,输出1到100之间的全部素数?
  3. C语言,输出1到100之间的全部素数?
  4. c语言判断素数为什么要用sqrt?

c语言编程题:求100到300之间的所有素数?

#include <stdio.h>#include <math.h>main(){int m,i,k,h=0,leap=1; //leap为标志位printf(&#34;\n");for(m=101;m<=300;m++) //实现100到300的素数输出{k=sqrt(m+1);for(i=2;i<=k;i++)if(m%i==0) //如果数值能被2到根号m整除,将标志位赋值为0;跳出循环{leap=0;break;}if(leap) //如果标志位为1,表示从2到根号m不能整除m,即m是素数{printf("%-4d",m)

; //格式输出,相信你应该懂得,使输出结果好看h++;if(h%10==0) //每十个换行printf("\n");}leap=1;}printf("\nThe total is %d",h);}

c语言求素数的函数,c语言中求素数的函数-第1张图片-芜湖力博教育咨询公司
图片来源网络,侵删)

C语言,输出1到100之间的全部素数?

方法一:

1、遍历1到100之间所有数,由于1的特殊性,不是素数也不是合数,所以可以从2开始遍历;

2、对于每一个数判断是否为素数;

c语言求素数的函数,c语言中求素数的函数-第2张图片-芜湖力博教育咨询公司
(图片来源网络,侵删)

3、如果是素数,则输出,否则继续下一个。

参考代码

#include <stdio.h>
#include <math.h>
int isPrime(int n)//判断素数函数。
{
int i;
for(i = 2; i <= (int)sqrt(n); i ++)//从2到算数平方根遍历。
if(n%i == 0) return 0;//存在约数,非素数,返回0.
return 1;//是素数,返回1.
}
int main()
{
int i;
for(i = 2; i <= 100; i ++)//遍历。
if(isPrime(i))//是素数。
printf("%d ", i);//输出素数。
return 0;
}

c语言求素数的函数,c语言中求素数的函数-第3张图片-芜湖力博教育咨询公司
(图片来源网络,侵删)

方法二是输出100个素数,基本思想是构造一个素数表,利用函数判断每个数是否能被其之前的素数整除,如果不能,则在素数表内加上该元素,不断循环(while循环结束条件是cnt即数组个数>100)。

C语言,输出1到100之间的全部素数?

方法一:

1、遍历1到100之间所有数,由于1的特殊性,不是素数也不是合数,所以可以从2开始遍历;

2、对于每一个数,判断是否为素数;

3、如果是素数,则输出,否则继续下一个。

参考代码:

#include <stdio.h>
#include <math.h>
int isPrime(int n)//判断素数函数。
{
int i;
for(i = 2; i <= (int)sqrt(n); i ++)//从2到算数平方根遍历。
if(n%i == 0) return 0;//存在约数,非素数,返回0.
return 1;//是素数,返回1.
}
int main()
{
int i;
for(i = 2; i <= 100; i ++)//遍历。
if(isPrime(i))//是素数。
printf("%d ", i);//输出素数。
return 0;
}

方法二是输出100个素数,基本思想是构造一个素数表,利用函数判断每个数是否能被其之前的素数整除,如果不能,则在素数表内加上该元素,不断循环(while循环结束条件是cnt即数组个数>100)。

c语言判断素数为什么要用sqrt?

并不是一定要用sqrt。在编写函数判断某个数n 是否为素数时,需要使用一个循环,从2到某个数m(m<n),如果2~m之间这个范围内所有的数都不能整除n,那么n就是素数,否则就不是素数。为了提高判断的效率,就需要减少2~m这个范围,越小越好,显然m不需要取到n-1,事实上到n/2是可以的(也就是一半处),但数学上可以证明,对大多数的整数(n>4),m只需要到根号n即可,也就是sqrt(n)。

所以使用sqrt的目的是为了减少循环判断次数,其实也不是必然使用的,换成n/2也是可以的

到此,以上就是小编对于c语言求素数的函数的问题就介绍到这了,希望介绍关于c语言求素数的函数的4点解答对大家有用

标签: 素数 输出 遍历