下列给定程序中,函数fun的功能是:求出如下分数序列的前n项之和,和值通过函数值返回。 例如,若n=5,则应输出8.391667。 请改正程序中的错误,使其得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 试题程序:

admin2017-02-24  44

问题 下列给定程序中,函数fun的功能是:求出如下分数序列的前n项之和,和值通过函数值返回。

例如,若n=5,则应输出8.391667。
请改正程序中的错误,使其得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdlib.h>
#include<conio.h>
#include<stdio.h>
/*********found*********/
void fun(int n)
(
    int a=2,b=1,c,k;
    double s=0.0;
    for(k=1;k<=n;k++)
    {
    /*********found*********/
      s=s+(Double)a/b,
        c=a;a=a+b;b=c;
    }
    return(s);
  }
  void mairl()
  {
    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)由语句“return(s);”和变量s定义为double型可知,该函数定义时其类型标识符为double类型。
(2)注意数据类型double的书写格式。
确定函数类型标识符在填空和改错题中经常考到,如果函数没有返回值,则函数定义为void型;如果函数有返回值,则函数类型应与返回值类型一致;如果不定义函数类型标识符,则系统默认为int型。
转载请注明原文地址:https://kaotiyun.com/show/bMDp777K
0

最新回复(0)