请计算y=1+1/(1+1/(1+1/5))(用C语言),要求:答案使用浮点输出一行,不要输出多余的零,行尾回车。

#include<stdio.h>#include<math.h>intmain(){inta;floaty;a=1;y=1.2;while(a<3){y=1+1/y;a... #include <stdio.h>
#include <math.h>
int main()
{
int a;
float y;
a=1;
y=1.2;
while(a<3){
y=1+1/y;
a=a+1;}
printf("%f\t",y);
return 0;
}
我这哪里有错
求y=1+1/(1+1/(1+1/5))
这是作业 程序本身没问题 叫上去说wrong answer
展开
 我来答
爱教育爱学习
高粉答主

2019-10-18 · 学而不思则罔,思而不学则殆
爱教育爱学习
采纳数:384 获赞数:112760

向TA提问 私信TA
展开全部

y=1+1/(1+1/(1+1/5)):

#include <iostream>

using namespace std;

int main()

{

printf("%.4f",1.0+1.0/(1.0+1.0/(1.0+1.0/5)));

return 0;

}

扩展资料

1-1/3+1/5-……的前n项之和需要变量来表示符号位(正+或-),分子不变可直接用常量1,分母需要变量表示,每下一项+2。循环相加,可用for循环

本题需要五个变量:分母m:从1开始,到n结束,每次+2;项f:由分子和分母构成,因为有小数,用1.0/i;符号flag:正负相间隔,一次正+,下一次为负-;和s。循环变量i:表示循环的次数。输入:分子:常量1,j。处理:循环相加。输出:s。

#include <stdio.h>

int main(void){

int i,n;

double f,s;

int flag=1,m=1;

printf("请输入分母的终值:");

scanf("%d",&n);

for(i=1,s=0;i<=n;i++)

{

f=flag*1.0/m;

s+=f;

flag=-flag;

m=m+2;

}

printf("1+1/3-1/5+...+1/n=%.2f\n",s);

system("pause");

return 0;

}

参考资料来源:百度百科—c语言

terranlong
2011-09-21 · TA获得超过7294个赞
知道大有可为答主
回答量:2660
采纳率:66%
帮助的人:4089万
展开全部
有一点小小的错,看注释
#include <stdio.h>
int main()
{
int a;
float y;
a=1;
y=1.2;
while(a<3){
y=1.0+1.0/y; //1都改1.0,否则将y强制转换成int,也就是1,那就得不到预期结果
a++;}
printf("%f\t",y);
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
松甜恬0Je4ba
2011-09-21 · TA获得超过2.6万个赞
知道大有可为答主
回答量:7475
采纳率:100%
帮助的人:3663万
展开全部
#include <stdio.h>
#include <math.h>
int main()
{
int a;
float y;
a=1;
y=5; //初始值为5,哪1.2是你自己计算后的结果,这个最好不要。
while(a<=3){ //循环三次。
y=1+1/y;
a=a+1;
}
printf("%f\n",y);
getchar(); //结果停留
return 0;
}

//提示的错误是什么?可以贴出来,这样方便回答。
追问
你的方法我也试了 还是不行 这是作业 程序本身没问题 交上去说wrong answer
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zw13502036905
2011-09-21 · 超过18用户采纳过TA的回答
知道答主
回答量:77
采纳率:0%
帮助的人:54.3万
展开全部
#include <stdio.h>
#include <math.h>

int main()
{
int a;

float y;

a=0;
y=5;

while(a<3)
{
y = (float)1 + (float)1/y;
a ++;
}
printf("%f\n",y);
return 0;
}

如果是编译器报错试试上面的代码。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ahappyboy191
2011-09-21
知道答主
回答量:24
采纳率:0%
帮助的人:20.3万
展开全部
#include <stdio.h>
#include <math.h>
int main()
{
int a;
float y;
a=1;
y=1.2;
while(a<3)
{
y=1+1/y;
a=a+1;
}
printf("%f\n",y);
return 0;
}
你的结果是对的啊,神马意思。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(8)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式