编写函数fun,其功能是:根据以下公式求P的值,结果由函数值带回。m与n为两个正整数且要求m >n。 例如:m=12,13=8时,运行结果为495.000000。 注意:部分源程序在文件PROG1.C中。 请勿改动主函数main和

admin2017-09-23  22

问题 编写函数fun,其功能是:根据以下公式求P的值,结果由函数值带回。m与n为两个正整数且要求m >n。

    例如:m=12,13=8时,运行结果为495.000000。
    注意:部分源程序在文件PROG1.C中。
    请勿改动主函数main和其他函数中的任何内容。
仅在函数fun的花括号中填入你编写的若干语句。
    试题程序:
#include < stdio.h >
float fun(int m,int n)
{

}
main()/*主函数*/
{void NONO();
  prLntf("P=%f\n",fun(12,8));
  NONO();
}
void NONO()
{/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/
  FILE,* fp,*wf;
  int i,m,n;
  float s;
  fp=fopen("in.dat","r");
  wf=fopen("out.dat","w");
  for(i=0;i < 10 ; i++){
    fscanf(fp,"%d,%d",&m,&n);
    s=fun(m,n);
    fprintf(wf,"%f\n",s);
    }
    fclose(fp);
    fclose(wf);
}

选项

答案long jc (int m) { long s =1; int i ; for(i=1;i < =m;i++) s=s*i ; return s; } float fun (int m, int n) { float p; p =1.0 *jc (m)/jc (n)/jc (m 一n) ; return p; }

解析 本题考查算术运算的算法,先建立一个jc函数来计算m的阶乘,函数中使用一个for循环来计算m的阶乘,并将计算结果作为函数的返回值。在fun函数中调用jc函数,来计算三个阶乘的除法。
转载请注明原文地址:https://kaotiyun.com/show/osxp777K
0

随机试题
最新回复(0)