获取所有小于等于n的质数的数量

#include <stdio.h>

int main(void) {
  /*
   * 给定整数n,获取所有小于等于n的质数的数量
   * 示例:
   *     输入:n=100
   *     输出:25个质数
   * */
  int n;
  int count = 0;

  printf("给定一个整数:");
  scanf("%d", &n);

  for (int i = 2; i < n + 1; i++) {
    // 每次循环,is要重新赋值
    int is = 0;
    // 判断i是不是一个质数
    for (int j = 2; j < i; j++) {
      if (i % j == 0) {
        // i是一个合数
        is++;
        // 若i是能被某个数整除,则直接退出
        break;
      }
    }
    if (is == 0) {
      printf("%d ", i);
      count++;
    }
  }
  printf("一共%d个质数\n", count);

  return 0;
}
posted @ 2026-01-14 09:07  Zhuye_inking  阅读(7)  评论(0)    收藏  举报