使用 C 语言查找前 N 个质数

CBeginner
立即练习

介绍

在本实验中,我们将编写一个 C 程序,使用嵌套的 for 循环来找到前 n 个质数。n 的值将由用户输入。我们将迭代 n 次以找到所有的质数。

注意:你需要自己创建文件 ~/project/main.c 来练习编码,并学习如何使用 gcc 编译和运行它。

cd ~/project
## 创建 main.c
touch main.c
## 编译 main.c
gcc main.c -o main
## 运行 main
./main

包含库和声明变量

在第一步中,我们将包含必要的库。我们只会使用一个库 stdio.h,它用于标准输入和输出。然后,我们将声明程序中要使用的变量。

#include <stdio.h>

int main()
{
  int n, i = 3, count, c;

获取输入

在第二步中,我们将从用户那里获取需要生成的质数的数量。我们将使用 scanf 函数来获取用户的输入。

printf("Enter the number of prime numbers required: ");
scanf("%d", &n);

查找质数

在第三步中,我们将使用嵌套的 for 循环来查找 n 个质数。第一个质数是 2,所以我们会在循环外打印它。为了找到接下来的质数,我们将迭代 n 次。在每次迭代中,我们会检查数字 i 是否为质数。如果是质数,我们会打印它,并增加质数的计数(count)。

if (n >= 1) {
  printf("First %d prime numbers are: 2 ", n);
}

for (count = 2; count <= n;) {
  for (c = 2; c <= i - 1; c++) {
    if (i % c == 0) {
      break;
    }
  }
  if (c == i) {
    printf("%d ", i);
    count++;
  }
  i++;
}

输出结果

在第四步也是最后一步中,我们将生成的质数输出到控制台。

printf("\n");
return 0;

总结

在本实验中,我们学习了如何使用嵌套的 for 循环在 C 语言中查找前 n 个质数。我们逐步讲解了如何创建程序,包括获取用户输入以及遍历不同的值来检查它们是否为质数。最后,我们将结果输出到控制台。