重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
#include stdio.h
成都创新互联公司专业成都网站设计、网站制作,集网站策划、网站设计、网站制作于一体,网站seo、网站优化、网站营销、软文发布平台等专业人才根据搜索规律编程设计,让网站在运行后,在搜索中有好的表现,专业设计制作为您带来效益的网站!让网站建设为您创造效益。
int is_prime_number(int n)
{
int i;
int result = 1;
if(n==1)
return 0;
for(i=2;in;i++)
{
if(n%i==0)
{
result = 0;
break;
}
}
return result;
}
int main()
{
int n;
printf("100以内的素数包括:\n");
for(n=1;n=100;n++)
{
if(is_prime_number(n))
{
printf("%d ",n);
}
}
printf("\n");
return 0;
}
判断素数最直观的思路是,从2开始到n-1找有没有能被n整除的,没有的话n就是素数,根据数学知识,如果2到根号n范围内没有数能被n整除,n就是素数。
#includestdio.h
int prime(int n)
{
int i;
for(i=2;i*i=n;i++)
{
if(n%i==0) //如果n能整除i,n就不是素数 ,返回1
return 1;
}
return 0; //所有的2到根号n的整数都不能被n整除,n就是素数,返回0
}
int main()
{
int n;
int count=0; //计算已经找了几个素数
for(n=2;count50;n++)
{
if(prime(n)==0)
{
count++;
printf("第%d个素数是:%d\n",count,n);
}
}
return 0;
}
/判断是不是素数
#includestdio.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;ia;i++)
if(a%i==0)
return 0;//a%i==0不成立
else
return 1;//a%i==0成立
}
扩展资料:
素数的算法
1、素数:除了1和本身外无法被其他自然数整除的数,叫做素数,也称质数,如:2,3,5,7一系列。
2、合数:比1大但不是素数的数称为合数,如:8,9,10一系列。
3、特殊的数字:1和0既不是素数也不是合数。
4、算法: 1确定性算法 2随机性算法 3Eratosthenes算法。
#include
"stdio.h"
#include
"math.h"//判断一个整数是否为素数
bool
prime(int
x)
{
int
i;
for(i=2;i=
sqrt(x);i++)
{
if(x%i==0)
return
false;
}
return
true;
} //判断一个整数(1位或多位)是否每一位都是素数
bool
allPrime(int
a)
{
if(prime(a%10))
//如果个位是素数
{
a=a/10;
return
allPrime(a);
}
else
return
false;
}//
打印出1-5000内满足题意的素数
void
printPrime()
{
int
i;
int
a=0;
for(
i=11;i5000;)
//
1-9
不用再判断了,只有一位。10和5000很明显也不用去判断了,不是素数
{
if(prime(i))
//
如果i是素数,判断个位是不是素数,如果个位不是,不满足第二个条件
{
if(prime(i%10))
//判断个位
{
a=i/10
;
//a就是去掉个位后的数
if(prime(a))
//判断a
是否是素数,如果是,再判断a每一位是否是素数
{
if(allPrime(a))
printf("%d\n",i);
} }
}
i+=2;
}
}int
main()
{
printPrime();
}
#include stdio.h
#include math.h
//判断整数是否为素数
int isPrime(int n)
{
int i;
for(i=2;i=(int)sqrt(n);i++) //遍历从2~n的平方根向下取整
if(n%i == 0) //如果有i能被n整除,则n不是素数,返回0,否则返回1
return 0;
return 1;
}
//编写测试主函数
int main()
{
int n;
scanf("%d",n);
if(n2)
{
printf("输入错误!\n");
return -1;
}
if(isPrime(n)) //调用素数判断函数
printf("%d is a prime number\n",n);
else
printf("%d is not a prime number\n",n);
return 0;
}
#include stdio.h
int fun(int x)//
{
if(x2)
return 0;//返回0,非素数
for(int i=2;i*i=x;i++)
if(x%i==0)
return 0;
return 1;//返回1,素数
}
int main()
{
int n;
scanf("%d",n);
if(fun(n)==1)
printf("%d是素数\n",n);
else
printf("%d不是素数\n",n);
return 0;
}