问题
问答题
编写函数fun,其功能是计算:
s作为函数值返回。
在C语言中可调用log(n)函数求ln(n)。log函数的引用说明为:double log(double x)。
例如,若m的值为20,则fun的函数值为6.506583。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include<stdlib.h>
#include<conio.h>
#lnclude<stdio.h>
#include<math.h>
double fun(int m)
void main()
system("CLS");
printf("%f\n",fun(20));
答案
参考答案:
double fun(int m)
{
inf i;
double s=0.0;
for(i=1;i<=m;i++)
s=s+log(i); /*计算s=ln…+ln(2)+ln(3)+…+ln(m)*/
retum sqrt(s)/*返回s的平方根*/
}
解析:
本题关键字有:计算表达式的值;平方根函数sqrt。
[微分析]
使用循环计算从1~m备数的对数的和,log函数的形参为double型变量,而循环变量为整数,需要进行强制转换,通过sqrf函数返回平方根。