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

admin2020-06-02  34

问题 使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件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 func.tion is:%lf\n",fun(n));
}

选项

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

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

最新回复(0)