为了账号安全,请及时绑定邮箱和手机立即绑定

我意识计算结果是3.000000 但答案显示是5.500000 求教高手解答5.5是怎么计算来的?

我意识计算结果是3.000000 但答案显示是5.500000 求教高手解答5.5是怎么计算来的?

C#
波斯汪 2023-04-20 16:15:16
C #include<stdio.h> double f(int n) {int i;double s; s=1.0; for(i=1;i<=n;i++)s+=1.0/i; return s; }main(){int i,m=3; double a=0.0;for(i=0;i<m;i++)a+=f(i);printf("%f\n",a);} 
查看完整描述

2 回答

?
守候你守候我

TA贡献1802条经验 获得超10个赞

根据函数的定义 f(0)时函数for语句i<=n 不成立,故f(0)=s=1.0 
f(1)=2.0 f(2)=2.5
a=0.0+f(0)+f(1)+f(2)=5.5 输出为%f型故有小数

查看完整回答
反对 回复 2023-04-23
?
慕村9548890

TA贡献1884条经验 获得超4个赞

a=0.0+f(0)+f(1)+f(2)
=0.0+(1.0)+(1.0+1.0/1)+(1.0+1.0/1+1.0/2)
=0.0+1.0+2.0+2.5
=5.5

查看完整回答
反对 回复 2023-04-23
  • 2 回答
  • 0 关注
  • 124 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信