使用C语言,输入 个整数字列,以及基准,要求计算并输出该序列中基准以上的素数个数。素数又称质数,是指一个大于的自然数,除了1和它自身外,不能被其他自然数整除的数
时间: 2024-02-25 20:56:58 浏览: 139
好的,以下是使用C语言实现的代码:
```c
#include <stdio.h>
// 判断一个数是否为素数
int is_prime(int num) {
if (num < 2) {
return 0;
}
for (int i = 2; i * i <= num; i++) {
if (num % i == 0) {
return 0;
}
}
return 1;
}
int main() {
int num_list[100];
int n, base, count = 0;
// 输入整数字列和基准
printf("请输入整数字列的长度(不超过100):");
scanf("%d", &n);
printf("请输入整数字列,以空格分隔:");
for (int i = 0; i < n; i++) {
scanf("%d", &num_list[i]);
}
printf("请输入基准:");
scanf("%d", &base);
// 计算基准以上的素数个数
for (int i = 0; i < n; i++) {
if (num_list[i] > base && is_prime(num_list[i])) {
count++;
}
}
// 输出结果
printf("该序列中基准以上的素数个数为:%d\n", count);
return 0;
}
```
在这段代码中,我们首先定义了一个 `is_prime` 函数来判断一个数是否为素数。然后,我们通过 `scanf` 函数获取用户输入的整数字列和基准,并将其存储在数组 `num_list` 和变量 `base` 中。接下来,我们使用一个 `for` 循环遍历整数字列中的每个数,如果该数大于基准且为素数,我们就将计数器 `count` 加 1。最后,我们使用 `printf` 函数输出计数器的值,即为基准以上的素数个数。
希望这个回答能够解决您的问题。
阅读全文