C语言编写函数int fun(int k, int a[])实现求小于或等于给定正整数k的所有素数并放在数组a中,该函数返回所求出素数的个数。
时间: 2023-09-24 17:14:16 浏览: 102
C语言上机练习
以下是C语言编写的求小于或等于给定正整数k的所有素数并放在数组a中的函数:
```c
#include <stdio.h>
#include <stdbool.h>
bool isPrime(int n) {
if (n < 2) {
return false;
}
for (int i = 2; i * i <= n; i++) {
if (n % i == 0) {
return false;
}
}
return true;
}
int fun(int k, int a[]) {
int count = 0;
for (int i = 2; i <= k; i++) {
if (isPrime(i)) {
a[count++] = i;
}
}
return count;
}
int main() {
int k = 50;
int a[50];
int count = fun(k, a);
printf("There are %d prime numbers less than or equal to %d:\n", count, k);
for (int i = 0; i < count; i++) {
printf("%d ", a[i]);
}
printf("\n");
return 0;
}
```
函数`isPrime`用于判断一个数是否为素数,如果是素数返回`true`,否则返回`false`。函数`fun`用于求小于或等于给定正整数`k`的所有素数并放在数组`a`中,返回所求出素数的个数。在`main`函数中,我们调用`fun`函数来求小于或等于`k`的所有素数,并输出结果。
阅读全文