断一个数是不是素数:
#include <stdio.h>
#include <math.h>
int main()
{
int a;
printf("请输入一个整数:");
scanf("%d", &a);
if(a <= 1)
printf("这个数不是素数\n");
else if(a == 2)
printf("这个数是素数\n");
else
{
double b = sqrt(a); //sqrt的函数声明在math.h里 功能就是求一个数的平方根 ,其返回值是一个double型的数据
// 5 -> a;
//16 1 2 4 8 16 17
for(int i = 2; i <= b; ++i)//5%2, 3, 4 == 0 printf(no) end;
{
if(a%i == 0)
{
printf("这个数不是素数\n");
return 0;
}
}
printf("这个数是素数\n");
}
return 0;
}
#include <stdio.h>
#include <math.h>
int main()
{
int n,i;
scanf("%d",&n); //从键盘上输入 n
int k=sqrt(n);
for( i=2 ; i<=k ; i++)
{
if(n%i==0)
{
break;
}
}
if(i>k) printf("%d 是素数",n);
else printf("%d 不是素数",n);
}
(2)找出101到200之间的素数:先求出奇数,然后再从奇数中找素数
注意事项:在多层循环中, break语句仅会跳到一层之外。
判断素数的方法:用一个数从2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。