文章
20
粉丝
147
获赞
13
访问
51.7k
#include <iostream>
using namespace std;
int main()
{
int a;
double b,c,t;
double s=0;b=2.0;c=1.0;
scanf("%d", &a);
for(int i=1;i<=a;i++)
{
s+=(b*1.0)/c;
t=b;
b=b+c;
c=t;
}
printf("%.2f",s);
return 0;
}
看到这个题瞬间就有了思路,
s+=(b*1.0)/c;
t=b;
b=b+c;
c=t;
只是一开始,我没有搞那个大众都说的一个temp的东西!
导致赋值过程出错!
一直是整数跟整数相除!没有浮点数的出现。
后来尝试了一下,这个语句就成功啦!
可能这个问题跟编译器种类有关的,我的是dev-c++。就会出现这个问题!
printf("%.2f\n",s);
对呀,就是printf("%.2f").这个是小数点保留几位就写阿拉伯数字几~
登录后发布评论
暂无评论,来抢沙发