判断素数的C语言代码
时间: 2023-11-29 18:45:21 浏览: 77
素数判断的C代码
以下是两种判断素数的C语言代码:
方法一:在2到n-1之间任取一个数,如果n能被所取的数整除则不是素数,否则就是素数。
```c
#include <stdio.h>
int main()
{
int i, n;
printf("请输入数值 ");
scanf("%d", &n);
for (i = 2; i <= n - 1; i++) //在2到n-1之间任取一个数
{
if (n % i == 0)
{
break;
}
}
if (i >= n)
{
printf("这是素数\n"); //直到循环结束都未被整除,是素数
}
else
{
printf("这不是素数\n"); //能被整除,不是素数
}
return 0;
}
```
方法二:在2到n/2之间任取一个数,如果n能被所取的数整除则不是素数,否则就是素数。
```c
#include <stdio.h>
int main()
{
int i, n;
printf("请输入数值 "); scanf("%d", &n);
for (i = 2; i <= n / 2; i++) //在2到n/2之间任取一个数
{
if (n % i == 0)
{
break;
}
}
if (i > n / 2)
{
printf("这是素数\n"); //直到循环结束都未被整除,是素数
}
else
{
printf("这不是素数\n"); //能被整除,不是素数
}
return 0;
}
```
方法三:在2到sqrt(n)之间任取一个数,如果n能被整除则不是素数,否则就是素数。
```c
#include <stdio.h>
#include <math.h> //引用数学公式的声明
int main()
{
int i, j, n;
printf("请输入数值: ");
scanf("%d", &n);
j = (int)sqrt(n); //j为n开平方根,也就是根号下n
for (i = 2; i <= j; i++) //在2到sqrt(n)之间任取一个数
{
if (n % i == 0)
{
break;
}
}
if (j < i)
{
printf("这是素数\n"); //循环结束还不能被整除,是素数
}
else
{
printf("这不是素数\n"); //被整除,不是素数
}
return 0;
}
```
阅读全文