c语言怎么求n个数中素数的个数

avatar
作者
筋斗云
阅读量:0

要求n个数中素数的个数,可以按照以下步骤进行:

  1. 首先定义一个函数isPrime,用于判断一个数是否为素数。判断方法可以从2开始,依次判断该数是否能被2到sqrt(n)之间的数整除,如果存在能整除的数,则该数不是素数;否则,该数是素数。

  2. 在主函数中,先读入一个整数n,表示接下来要输入n个数。

  3. 使用一个循环,读取n个数,将每个数都调用isPrime函数进行判断。如果返回结果为真,则素数个数加1。

  4. 输出素数个数。

以下是代码示例:

#include <stdio.h> #include <math.h>  int isPrime(int num) {     if (num <= 1) {         return 0;     }     for (int i = 2; i <= sqrt(num); i++) {         if (num % i == 0) {             return 0;         }     }     return 1; }  int main() {     int n, count = 0;     printf("请输入个数n:");     scanf("%d", &n);     printf("请输入%d个数:", n);     for (int i = 0; i < n; i++) {         int num;         scanf("%d", &num);         if (isPrime(num)) {             count++;         }     }     printf("素数个数:%d\n", count);     return 0; } 

注意:在上述代码中,我们使用了math.h头文件中的sqrt函数,需要在编译时链接数学库,例如使用gcc编译时可以加上-lm选项:gcc -o prime prime.c -lm

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!