21xrx.com
2025-03-30 14:19:23 Sunday
文章检索 我的文章 写文章
如何在C语言中判断一个数是否为素数
2023-06-18 00:41:47 深夜i     20     0
素数 C语言 判断算法 循环 标志位

素数是指只能被1和自身整除的正整数,如2、3、5、7等。在C语言中,判断一个数是否为素数可以用以下算法:对于一个大于2的正整数n,如果它能被2到sqrt(n)间的所有整数整除,那么它就不是素数。

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

#include 
#include 
int main() {
  int n, i, flag = 1;
  printf("请输入一个正整数:");
  scanf("%d", &n);
  for (i = 2; i <= sqrt(n); i++) {
    if (n % i == 0)
      flag = 0;
      break;
    
  }
  if (flag == 1) {
    printf("%d是素数", n);
  } else {
    printf("%d不是素数", n);
  }
  return 0;
}

首先,代码要求用户输入一个正整数n,然后进行循环从2到sqrt(n)的循环,判断n是否能被i整除。如果n能被i整除,则说明n不是素数,标志位flag被赋值为0,并跳出循环。最后根据标志位flag的值输出判断结果。

  
  

评论区

请求出错了