代码如下所示:
#include <stdio.h>
#define N 20 //N的值不能太小,为了确保不溢出,我们可以规定它与n的值相同
int fun(int a[], int n)//数组和指针都可进行传递
{
int i, j=0,sum=0,k;
for (k=3,i = 0; i < n; i++,k += 5)//变量k在本循环中的作用是实现符合条件的值的求解
//变量i在本循环中的作用则是对n个数的遍历
{
sum += k;
if (sum % 4 == 2)
a[j++] = sum;//将符合条件的数存放在一个数组中
}
return j;//作为返回值给d
}
int main()
{
int n,a[N], i, d;
scanf_s("%d", &n);//累加的项数
d=fun(a,n);
for (i = 0; i < d; i++)//对数组元素进行输出
printf("%6d", a[i]);
}
输出结果如下所示: