编写fun函数,找出1000以内所有的素数,并返回元素个数。在主函数中调用fun函数,输出这些素数
时间: 2024-02-20 12:59:22 浏览: 107
shiyan.rar_Fun_ Fun_ Fun_shiyan函数
下面是一个使用C语言编写的找出1000以内所有素数的代码,其中fun函数返回素数的个数,主函数中会输出这些素数:
```c
#include <stdio.h>
int fun(int n, int arr[]) {
int count = 0;
for (int i = 2; i <= n; i++) {
int is_prime = 1;
for (int j = 2; j * j <= i; j++) {
if (i % j == 0) {
is_prime = 0;
break;
}
}
if (is_prime) {
arr[count++] = i;
}
}
return count;
}
int main() {
int arr[1000];
int count = fun(1000, arr);
printf("There are %d prime numbers between 1 and 1000:\n", count);
for (int i = 0; i < count; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
在上面的代码中,fun函数接受一个整数n和一个数组arr作为参数,返回1000以内所有素数的个数。在fun函数中,我们从2开始遍历到n,对于每个数i,我们用一个is_prime变量表示它是否为素数。然后我们从2开始遍历到i的平方根,判断i是否能被这些数整除。如果i能被整除,说明它不是素数,将is_prime置为0。如果i不能被整除,说明它可能是素数,继续遍历。最后,如果is_prime为1,说明i是素数,将它存入数组arr中,并将count加1。最后,fun函数返回count,表示素数的个数。
在主函数中,我们调用fun函数找出1000以内所有素数,并输出它们的个数和值。
阅读全文