使用VC++2010打开考生文件夹下modil中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:求出如下分数列的前n项之和。 和值通过函数值返回main函数。例如,若n=5,则应输出8.391667。 请改

admin2018-08-11  30

问题 使用VC++2010打开考生文件夹下modil中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:求出如下分数列的前n项之和。

和值通过函数值返回main函数。例如,若n=5,则应输出8.391667。
请改正程序中的错误,使它能得出正确的结果。
注意:部分源程序在文件MODI1.C中,不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdlib.h>
#include<conio.h>
#include<stdio.h>
/*********found*********/
fun(int n)
{int a,b,c,k;
double s;
S=0.0;a=2;b=1;
for(k=1;k<=n;k++)
{
/*********found*********/
s=s+(Double)a/b;
c=a;a=a+b;b=c;
}
return s;
}
main()
{int n=5;
system("CLS");
printf("\nThe value of function is:%lf\n",fun(n));
}

选项

答案(1)double fun(int n) (2)s=s+(double)a//b;

解析 (1)由于返回值s是double型的,所以函数要定义为double型。
(2)C语言规定所有关键字都必须用小写英文字母表示,所以s=s+(1)ouble)a//b;应改为s=s+(double)a/b;。
转载请注明原文地址:https://kaotiyun.com/show/Ckxp777K
0

最新回复(0)