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

用c语言判断是否为素数

发布时间: 2022-01-18 01:32:13

① 如何用c语言编程判断一个数是不是素数

方法一:

#include<stdio.h>

int main(){

int i,j;

printf("请输入一个正整数。\n");

scanf("%d",&i);

if(i<2)

printf("小于2,请重新输入。\n");

elseif(i%2==0)

printf("%d不是一个素数。\n",i);

else{

for(j=2;j<=i/2;j++){

if(i%j==0){

printf("%d不是一个素数。\n",i);

break;

if(j>i/2){

printf("%d是一个素数。\n",i);

break;

方法二:

#include<stdio.h>

int main(){

int a=0;

int num=0;

scanf("%d",&num);

for(inti=2;i<num-1;i++){

if(num%i==0){

a++;

if(a==0){

printf("YES\n");

}else{

printf("NO\n");

方法三:

#include"stdio.h"

int main(){

printf("\t\t\t\t\thelloworld\n");

int a,i;

do{

printf("inputnumberjudgeprimenumber:\n");

scanf("%d",&a);

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

if(a%i==0)break;

if(i==a)

printf("%d是素数\n",a);

else

printf("%d不是素数\n",a);

}while(a!=0);

② C语言中判断一个数是否为素数

f是一个标记,当他的值为1时,说明他能被某个不为1和它本身的数整除,也就是说你输入的数不是素数,
至于那个i<=k和i>=k+1,如果你输入的那个数M一直都不能被从2到sqrt(m)整除时,经过循环后i=K+1,就满足i>=k+1,如果你输入的数M能被从2到sqrt(m)的某个数整除时,i就不会>=k+1

③ 用C语言的编程:利用调用函数,判断一个数是否是素数。

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

④ 用c语言判断一个数是否为素数

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

int Judge(int x)
{
while(x>1)
{
for(int i=2;i<=sqrt(x);i++)
if(x%i==0)
return 0;
return 1;
}
if(x<=1)
return 0;
}

main()
{
int x;
printf("请输入一个数:");
scanf("%d",&x);
switch(Judge(x))
{
case 0: printf("\n%d不是素数",x);break;
case 1: printf("\n%d是素数",x);break;
}
system("pause");
}

⑤ C语言编写一个程序判断一个数是否为素数急求

目的:判断一个数是否为素数

#include<stdio.h>


intmain(void)


{


int m;


inti;


scanf("%d",&m);


for(i=2;i< m;i++) //2到(m-1)的数去除m


{


if(m%i==0)//判断能否整除


break;

}

if(i== m)


printf("YES! ");


else


printf("No! ");


}

for循环的功能:

①若能整除,通过break跳出函数;

②若一直到m-1都不能整除,此时i再自增1到m,不满足i< m跳出for循环,这时i= m。

(5)用c语言判断是否为素数扩展阅读:


素数定理:



1、在一个大于1的数a和它的2倍之间(即区间(a,2a]中)必存在至少一个素数。



2、存在任意长度的素数等差数列。



3、一个偶数可以写成两个合数之和,其中每一个合数都最多只有9个质因数。(挪威数学家布朗,1920年)。



4、一个偶数必定可以写成一个质数加上一个合成数,其中合数的因子个数有上界。(瑞尼,1948年)。



5、一个偶数必定可以写成一个质数加上一个最多由5个因子所组成的合成数。后来,有人简称这结果为(1+5)(中国潘承洞,1968年)。



6、一个充分大偶数必定可以写成一个素数加上一个最多由2个质因子所组成的合成数。简称为(1+2)。

⑥ 如何用c语言判断一个数是不是素数

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

#include <stdio.h>

int main(){

int a=0; // 素数的个数

int num=0; // 输入的整数

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

scanf("%d",&num);

for(int i=2;i<num;i++){if(num%i==0){a++; // 素数个数加1}}

if(a==0){printf("%d是素数。 ", num);}else{printf("%d不是素数。 ", num);}return 0;}

⑦ C语言编程判断m是否为素数

/*Prime函数用来判断参数m是否是素数,用的方法是用m被2~√m之间的整数除,看能不能整除。能整除,说明是合数,返回0,否则是素数,返回1。主调函数调用它,对输入的整数n值进行判断,看是否素数。*/
#include
<stdio.h>
#include
<math.h>
void
main()
{
int
IsPrime(int
m);
int
n,
flag;
printf("Input
n:");
scanf("%d",
&n);
flag
=
IsPrime(n);
if
(
flag)
printf("它是素数\n");
else
printf("它不是素数\n");
}
int
IsPrime(int
m)
{
int
i,
k;
if
(m
<=
1)
return
0;
for
(i=2;
i<(int)sqrt(m);
i++)
{
k
=
m%i;
if
(
k==0)
{
return
0;
}
}
return
1;
}

⑧ 用c语言判断一个整数是否是素数

#include <stdio.h>

int isprime(int n)

{

int i;

if(n<2)

return 0;

for(i=2;i*i<=n;++i)

if(n%i==0)

return 0;

return 1;

}

int main()

{

int n;

scanf("%d",&n);

if(isprime(n))

puts("yes");

else

puts("no");

return 0;

}