A-A+
请编写函数proc 其功能是:计算并输出下列多项式值。 S=(1-1/2)+(1/3-1/4
问题详情
请编写函数proc,其功能是:计算并输出下列多项式值。 S=(1-1/2)+(1/3-1/4)+…+(1/(2n-1)-1/2n) 例如,若主函数从键盘给n输入20后,则输出为S= 0.680803。 注意:部分源程序给出如下。 请勿改动main函数和其他函数中的任何内容,仅在函数proc的花括号中填入所编写的若干语句。 试题程序: include t:stdio.h> double proc(int n) { } void main { int n; double slim; printf("\nInput n:"); scanf("%d",&n); sum=proc(n)。 printf("\ns=%f\n",sum); } 请帮忙给出正确答案和分析,谢谢!
参考答案
正确答案:
double proc(int n)
{
int i;
double s=0.0; //s为其和的变量
for(i=1;i<=n;i+十)
S=s+(1.0/(2*i-1)-1.O/(2*i)); //计算s
=(1-1/z)+(1/3-1/4)+…+(1/(2n-1)-1/
2n)
return s; //最后把所得到的和返回到主函数中
}
【解析】由题目中所给表达式可知,多项式的值为n项表达式的和。可以利用n次循环求出n项表达式的值,求和放在变量s中。最后将多项式的值返回到主函数当中。