帮忙看错!!!

来源:百度知道 编辑:UC知道 时间:2024/05/10 14:59:58
#include <iostream.h>
void main()
{
int a;
int b;
double c;
double d;
int e;

a=1;
b=1;
d=0;

do{
e=a;
b=e;
a=a+b;
c=a/b;
d=d+c;

}while(a<=3);
cout<<d<<endl;
}
#include <iostream.h>
void main()
{
int a;
int b;
int c;
int e;
double i;
double t;

a=1;
b=1;
e=1;
i=0;
do
{
c=a;
a=a+b;
b=c;
t=a/b;
i=i+t;
e++;
}while (e<=20);
cout<<i<<endl;
}

不好意思,应该是这个程序!!(4) 求一分数序列:2/1, 3/2, 5/3, 8/5, 13/8 ,21/13,前20项之和

int 和 double 的转换 容易出现问题
我们知道int 可以自动转换为 double 但是 double 不可以自动转换 int
建议 全部用double类型

#include <iostream.h>
void main()
{
int a;
int b;
double c;
double d;
int e;

a=1;
b=1;
d=0;

do{
e=a;
b=e;
a=a+b;
c=a/b; //唯一感觉不合适的地方只有这里了c=(double)a/b,但实在不知道你想做什么,没法帮你看
d=d+c;

}while(a<=3);
cout<<d<<endl;
}

没有任何语法错误,只是不知道你所说的错误指的是什么