问题详情

答题翼 > 问答 > 计算机类考试 > 正文
目录: 标题| 题干| 答案| 搜索| 相关

数列中 第一项为3 后一项都比前一项的值增5。下列给定程序中 函数fun()的功能是:计算前n(4≤n≤50)


数列中,第一项为3,后一项都比前一项的值增5。下列给定程序中,函数fun()的功能是:计算前n(4≤n≤50)项的累计和。在累加过程中把那些被4除后余2的当前累加值放入数组中,符合此条件的累加值的个数作为函数值返回主函数里。如,当n的值为20时,该数列为3,8,13,18,23,28,…, 93,98。符合此条件的累加值应为42,126,366,570,1010。

请改正程序中的错误,使它能得出正确的结果。

注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。

试题程序:

include <stdio. h>

define N 20

int fun(iht n, int *a)

/*************found*************/

{ int i, j, k, sum;

sum=0;

for(k=3, i=0;i<n; i++, k+=5)

{ sum=sum+ k;

/************found***************/

if (sum%4=2)

a [j++] =sum;

}

/*************found**************/

return j;

}

main ()

{ int a[N],d, n, i;

printf(" Enter n(4<=n<=50): ");

scanf("%d", &n);

d=fun(n, a);

printf(" The result : ");

for(i=0;i<d; i++) printf("%6d ",a[i]);

printf(" ");

}

请帮忙给出正确答案和分析,谢谢!

参考答案
您可能感兴趣的试题