求C语言大神帮忙看下程序。哪里错了哪里错了?

#include<stdio.h>#include<conio.h>#include<math.h>voidmain(){floatsum,term,x;intk,sig... #include<stdio.h>
#include<conio.h>
#include<math.h>
void main()
{
float sum,term,x;
int k,sign=1,
clrscr();
printf("请输入一个数x:");
scanf("%f",&x);
term=1;sum=1;
while(fabs(term)<1e-6)
{
k=k+2;
term*=x*x/k/(k-1);
sign=-sign;
sum+=sign*term;
}
printf("%6.2f\n",sum);
}
展开
 我来答
guan_yisheng
2013-12-19 · TA获得超过210个赞
知道小有建树答主
回答量:144
采纳率:100%
帮助的人:144万
展开全部
你的while根本就没执行嘛,1e-6,这个你首先明白是什么意思,然后才能做,不然,你输入多少都是得到1,因为你的sum赋值就是1,
建议:
将while改成while(fabs(term)> 1e-6),
追问
噢噢,我懂了,小于10^-6次方的时候就不进入循环了。新人不会写,谢谢指教。
追答
一点就通,不错!
2925059
2013-12-19 · TA获得超过4134个赞
知道大有可为答主
回答量:1.1万
采纳率:51%
帮助的人:1679万
展开全部
#include<stdio.h>
#include<conio.h>
#include <math.h>
#include "stdafx.h"
#include <float.h>;

void main()
{
float sum,term,x;
int k=0,sign=1,
clrscr();
printf("请输入一个数x:");
scanf("%f",&x);
term=1.0;sum=1.0;
while ((term<-1e-6)||(term>1e-6))
{
k=k+2;
term*=x*x/k/(k-1);
sign=-sign;

sum+=sign*term;
}
printf("%6.2f\n",sum);
getchar();
getchar();
getchar();
}
追问

弱弱问句

这个是干嘛使的?我好像没学

追答
哦哦  这个是为了让上面的程序不要关掉输出的窗口。

我的代码是vc编写的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
rowerqi
2013-12-19 · 超过11用户采纳过TA的回答
知道答主
回答量:42
采纳率:0%
帮助的人:30.8万
展开全部
k赋初值试试。
追问
好像不是这个的问题,得到的还是1.00。是不是我程序写错了?
追答
while(fabs(term)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式