21xrx.com
2025-03-21 13:31:27 Friday
文章检索 我的文章 写文章
使用C语言判断一个数是否为素数
2023-06-13 01:43:04 深夜i     13     0
C语言 素数 判断

素数是指只能被1和自身整除的整数,如2、3、5、7、11等。判断一个数是否为素数是数学中的常见问题,也是计算机科学中的重要应用之一。在C语言中,可以通过以下方法判断一个数是否为素数:

1. 从2开始,一直到该数的平方根,判断该数能否被其中任意一个数整除。如果可以整除,则该数不是素数;否则该数为素数。

2. 对于小于等于3的数,只需判断是否等于2或3即可。

3. 对于大于3的数,可以通过判断是否能被6的倍数加减1得到。即若n无法表示成6k±1的形式,则n不是素数。

下面是一个实现素数判断的C语言代码:

#include 
#include 
int isPrime(int n) {
  if (n <= 1)
    return 0;
  
  if (n <= 3)
    return 1;
  
  if (n % 2 == 0 || n % 3 == 0)
    return 0;
  
  int i = 5;
  while (i * i <= n) {
    if (n % i == 0 || n % (i + 2) == 0)
      return 0;
    
    i += 6;
  }
  return 1;
}
int main() {
  int n;
  printf("请输入一个整数:");
  scanf("%d", &n);
  if (isPrime(n)) {
    printf("%d是素数\n", n);
  } else {
    printf("%d不是素数\n", n);
  }
  return 0;
}

  
  

评论区