编写带有函数的程序(函数首行为:int fun(i nt*p),功能是从整数1到55之间,选出能被3整出,且有一位上的数是5的那些数,并把这些数存放在p所指向的数组中,这些数的个数作为函数的返回值。结果应该是:15 45 51 54
时间: 2024-05-06 22:18:02 浏览: 5
以下是一个符合要求的程序:
```c
#include <stdio.h>
int fun(int *p);
int main(void)
{
int arr[20];
int count = fun(arr);
printf("符合条件的数的个数是:%d\n", count);
printf("它们分别是:");
for (int i = 0; i < count; i++)
{
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
int fun(int *p)
{
int count = 0;
for (int i = 1; i <= 55; i++)
{
if (i % 3 == 0 && (i % 10 == 5 || i / 10 == 5))
{
*p++ = i;
count++;
}
}
return count;
}
```
程序中的 `fun` 函数使用了指针来接收数组,遍历整数1到55之间的每一个数,判断是否符合要求,如果符合,则将该数存入数组中,并使指针指向下一个位置,统计符合要求的数的个数并返回。在主函数中,调用 `fun` 函数,得到符合要求的数的个数和它们的值,并输出。