当前位置:首页 » 编程语言 » 寻找素数的c语言函数
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

寻找素数的c语言函数

发布时间: 2022-04-24 08:25:16

‘壹’ 用c语言的编程:利用调用函数,判断一个数是否是素数。

1、首先需要打开vs软件工程,准备好一个空白的C语言文件,引入头文件,主函数中暂时没有内容:

‘贰’ 求素数(C语言)用函数

#include<stdio.h>

intsushu(intz);/*函数声明最好放在外面,放到文件前端*/

voidmain()
{
intb,a;
printf("enteradate: ");
scanf("%d",&b);
a=sushu(b);
if(a==0||b==0)
printf("no ");
else
printf("yes ");
}
intsushu(intz)
{
inti,j;/*i和返回值要分开,i要做循环标尺的*/
for(i=2;i<z;i++)
{
if(z%i==0)
{
j=0;
break;/*一旦发现不是素数,跳出for循环*/
}
else
j=1;/*如果用i,就是个死循环,如果是素数,每次你把i=1后for循环一直继续*/
}
returnj;
}

‘叁’ c语言求素数

int fun(int n)
{ int a[10000], i,j, count=0;
/*将a数组赋值2-20*/
for (i=2; i<=n; i++)
a[i] = i;
i = 2;
/*将2到20之间2的偶数倍和2个偶数之和的数赋值0*/
while (i<n)
{
for (j=a[i]*2; j<=n; j+=a[i])
a[j] = 0;
i++;
/*判断如果查找到得是已经被赋值为0的数则去寻找下一个数*/
while (a[i]==0)
i++;
}
printf("\nThe prime number between 2 to %d\n", n);
/*输出在0-20之间的素数并用count计数*/
for (i=2; i<=n; i++)
if (a[i]!=0)
{
count++;
printf( count%15?"%5d":"\n%5d",a[i]);
}
return count;

‘肆’ C语言中求素数的函数是不是isprime请问是怎么用的 谢谢

c语言中没有求素数的程序,你的自己编一个,判断形参a是否为素数,若是素数,函数返回1,否则返回0。
int
isprime(int
a)
{
for
(int
i=2;i<=a/2;i++)
{
if
(a%i==0)
return
0;
}
return
1;
}

‘伍’ c语言编写函数判断素数

/判断是不是素数

#include<stdio.h>

int prime(int a);//函数声明

int main()

{

int n,i;

scanf("%d",&n);

if(prime(n)==1) //return返回值1

printf("prime");

else

printf("not prime") ;

}

int prime(int a)

{

int i;

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

if(a%i==0)

return 0;//a%i==0不成立

else

return 1;//a%i==0成立

}

(5)寻找素数的c语言函数扩展阅读:

素数的算法

1、素数:除了1和本身外无法被其他自然数整除的数,叫做素数,也称质数,如:2,3,5,7一系列。

2、合数:比1大但不是素数的数称为合数,如:8,9,10一系列。

3、特殊的数字:1和0既不是素数也不是合数。

4、算法: 1>确定性算法 2>随机性算法 3>Eratosthenes算法。

‘陆’ 用C语言如何判断素数

素数又称质数,所谓素数是指除了 1 和它本身以外,不能被任何整数整除的数,例如17就是素数,因为它不能被 2~16 的任一整数整除。

思路1、判断一个整数m是否是素数,只需把 m 被 2 ~ m-1 之间的每一个整数去除,如果都不能被整除,那么 m 就是一个素数。

思路2、判断方法还可以简化。

m 不必被2~m-1之间的每一个整数去除,只需被2~√m之间的每一个整数去除就可以了。如果 m 不能被2~√m间任一整数整除,m必定是素数。例如判别17是是否为素数,只需使17被2~4之间的每一个整数去除,由于都不能整除,可以判定17是素数。


原因:因为如果m能被2~m-1之间任一整数整除,其二个因子必定有一个小于或等于√m,另一个大于或等于√m。

例如16能被2、4、8整除,16=2*8,2小于 4,8大于4,16=4*4,4=√16,因此只需判定在2~4之间有无因子即可。


两种思路的代码请看解析。

拓展资料:

素数(prime number)又称质数,有无限个。素数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数。

C语言是一门面向过程、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。

网络——C语言

‘柒’ 用c语言编程序,用函数求素数,调用函数

#include<stdio.h>
#include<math.h>
//判断是否为素数的函数
intisPrime(intn)
{
inti=2;
while(i<=(int)sqrt(n))
{
if(n%i==0)
return0;//不是素数,直接返回0
else
i++;
}
return1;
}
intmain()
{
intn,i;
printf("输入一个正整数:");
scanf("%d",&n);
for(i=2;i<=n;i++)
{
if(isPrime(i))//调用函数,如果该数为素数,则输出
printf("%d",i);
}
printf(" ");
return0;
}

示例运行结果:

输入一个正整数: 50

2 3 5 7 11 13 17 19 23 29 31 37 41 43 47

‘捌’ 求"求素数的C语言程序"

#include <stdio.h>

int main()

{

int a=0;

int num=0;

int i;

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

scanf("%d",&num);

for(i=2;i<num;i++){

if(num%i==0){

a++;

}

}

if(a==0){

printf("%d是素数。 ", num);

}else{

printf("%d不是素数。 ", num);

}

return 0;

}

(8)寻找素数的c语言函数扩展阅读:

质数又称素数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数。

基本算法:若 k%m==0 则说明 k 不是素数。

判断整数n是否为素数——采用枚举法求解。

采用枚举算法解题的基本思路:

(1)确定枚举对象、枚举范围和判定条件;

(2)枚举可能的解,验证是否是问题的解。

枚举算法的一般结构:while循环。

参考资料来源:网络-枚举法




‘玖’ 用c语言编程序,用函数求素数,调用函数是什么

#include<stdio.h>
#include<math.h>

int fun(int n)
{ int i;
for(i=2;i<=sqrt(n);i++)
{
if(n%i==0)
return 0;
}
return 1;
}void main()
{
int n;
printf("请输入一个数:\n");
scanf("%d",&n);
if(fun(n))
printf("该素数是:%d",n);
else
printf("该数不是是素数:\n");
}

‘拾’ 求素数的C语言程序!

素数,也叫质数,就是指除了1和该数本身以外,不能被其他任何整数整除的正数。

#include<stdio.h>#include<math.h>voidmain(){intm,k,i,n=0;for(m=1;m<=200;m=m+2){k=sqrt(m);for(i=2;i<=k;i++)if(m%i==0)break;if(i>=k+1){printf("%5d",m);n=n+1;