我的这段C代码怎么输出不到正确答案?
来源:百度知道 编辑:UC知道 时间:2024/05/17 20:50:28
#include <stdio.h>
void main()
{
float x=2,y=1,sum=0;
int n;
for (n=1;n<=20;n++){
sum=sum+(x/y);
y=x;
x=x+y;
}
printf("%f",sum);
}
题目是:2/1+3/2+5/3...(前20项之和)
我的结果是40.0000000
正确应该是30多
为什么?我的程序出了什么问题?
void main()
{
float x=2,y=1,sum=0;
int n;
for (n=1;n<=20;n++){
sum=sum+(x/y);
y=x;
x=x+y;
}
printf("%f",sum);
}
题目是:2/1+3/2+5/3...(前20项之和)
我的结果是40.0000000
正确应该是30多
为什么?我的程序出了什么问题?
void main()
{
float x=2,y=1,sum=0;
int n;
for (n=1;n<=20;n++){
sum=sum+(x/y);
int tempY = Y
y=x;
x=tempY+x;
}
printf("%f",sum);
}
#include <stdio.h>
void main()
{
float x=2,y=1,sum=0;
int n;
float temp;
for (n=1;n<=20;n++){
sum=sum+(x/y);
temp = y;
y=x;
x=x+temp;
}
printf("%f",sum);
}
y=x;
x=x+y; 这段错了。。y 上面已经改变了。x不对