使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:根据整型形参n,计算如下公式的值。 例如,若n=10,则应输出0.617977。 请改正程序中的错误,

admin2020-06-02  35

问题 使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:根据整型形参n,计算如下公式的值。

  例如,若n=10,则应输出0.617977。
  请改正程序中的错误,使它能得出正确的结果。
  注意:部分源程序在文件MODI1.C中,不要改动main函数,不得增行或删行,也不得更改程序的结构!
  试题程序:
#include<stdlib.h>
#include<conio.h>
#include<stdio.h>
/*********found*********/
int fun(int n)
{float A=1;int i;
/*********found*********/
  for(i=2;i>n;i++)
    A=1.0/(1+A);
  return A;
}
void main()
{int n;
  system("CLS");
  printf("\nPlease enter n:");
  scanf("%d",&n);
  printf("A%d=%lf\n",n,fun(n));
}

选项

答案 (1)noat fun(int n) (2)for(i=2;i<=n;i++)

解析 (1)根据函数的返回值可知,函数应定义为float型。
    (2)该题中函数fun的作用是计算数列前n项的和,而数列的组成方式是:第n项的分母是1加第n-1项的值,分子为1,如果循环累加按for(i=2;i<n;i++)执行,当输入n=2时循环不会执行,程序将得不到想要的结果,因此循环变量的取值范围应包括2,循环的条件为i<=n。
转载请注明原文地址:https://jikaoti.com/ti/wuG0FFFM
0

最新回复(0)