c语言以下题目的输出结果

来源:百度知道 编辑:UC知道 时间:2024/05/22 04:20:50
doudle f(int n)
{ int i; double s;
s=1.0;
for(i=1;i<n;i++) s+=1.0/i;
return s;
}
nain()
{ int i;m=3; float a=0.0;
for(i=0;i<m;i++) a+=f(i);
printf("%f\n",a);
请把题目求的过程写出来,谢谢!!!

输出: 4.000000
#include <stdio.h>
double f(int n) //函数f:
{ //求1+1/1+1/2+...+1/(n-1)
int i; //
double s=1.0; //
for(i=1;i<n;i++) //
s+=1.0/i; //
return s; //
}
int main(void) //函数main:
{ //求f(0)+f(1)+f(2)
int i,m=3; //f(0)==1.0; f(1)==1.0; f(2)==2.0;
float a=0.0; //打印(1.0+1.0+2.0)
for(i=0;i<m;i++) a+=f(i);
printf("%f\n",a);
return 0;
}