用c语言实现,声明一个数组,然后编写函数,getAll,找出30以内所有素数;再编写函数dayin将30以内所有素数打印出来
时间: 2024-03-27 17:37:57 浏览: 56
好的,下面是实现代码:
```c
#include <stdio.h>
#define MAX_SIZE 30
// 判断一个数是否为素数
int isPrime(int num)
{
if (num <= 1) // 1不是素数
return 0;
for (int i = 2; i * i <= num; i++)
{
if (num % i == 0)
return 0;
}
return 1;
}
// 获取30以内所有素数
void getAll(int arr[], int *size)
{
*size = 0;
for (int i = 2; i <= MAX_SIZE; i++)
{
if (isPrime(i))
arr[(*size)++] = i;
}
}
// 打印数组中的素数
void dayin(int arr[], int size)
{
printf("30以内的素数有:\n");
for (int i = 0; i < size; i++)
{
printf("%d ", arr[i]);
}
printf("\n");
}
int main()
{
int arr[MAX_SIZE];
int size;
getAll(arr, &size);
dayin(arr, size);
return 0;
}
```
运行结果:
```
30以内的素数有:
2 3 5 7 11 13 17 19 23 29
```
阅读全文