用c语言输入n个整数,并存入数组 a,统计输出其中值为素数的元素个数。 输入格式 在第一行输入一个正整数n(1<n<=100); 在第一行输入个正整数,数据之间用空格分隔 输出格式: 输出素数的元素个数。 输入样例: 10 71 39 45 18 87 28 67 91 537 输出样例:4
时间: 2023-08-17 19:04:01 浏览: 108
C语言联系100题
以下是一份参考代码,仅供参考:
```c
#include <stdio.h>
int is_prime(int n) {
if (n < 2) {
return 0;
}
for (int i = 2; i * i <= n; i++) {
if (n % i == 0) {
return 0;
}
}
return 1;
}
int main() {
int n;
scanf("%d", &n);
int a[n];
for (int i = 0; i < n; i++) {
scanf("%d", &a[i]);
}
int count = 0;
for (int i = 0; i < n; i++) {
if (is_prime(a[i])) {
count++;
}
}
printf("%d\n", count);
return 0;
}
```
代码思路:
1. 定义一个函数 `is_prime`,用于判断一个整数是否为素数。
2. 在 `main` 函数中,先读入整数个数 `n`,然后定义长度为 `n` 的数组 `a`,并读入 `n` 个整数。
3. 遍历数组 `a`,如果元素是素数,则计数器 `count` 加 1。
4. 最后输出计数器 `count` 的值即可。
需要注意的是,函数 `is_prime` 的实现方式有很多,此处使用了一种比较简单的实现方式,可能存在一定的效率问题。如果需要更高效的实现方式,可以参考其他资料。
阅读全文