用C语言计算 1-2/3+3/5-4/7+5/9-6/11+、、、n/(2*n-1) 求高手指点

最好是自己写的,能执行,复制粘贴的就算了。... 最好是自己写的,能执行,复制粘贴的就算了。 展开
 我来答
White_MouseYBZ
2013-03-23 · TA获得超过4万个赞
知道大有可为答主
回答量:2.1万
采纳率:82%
帮助的人:6431万
展开全部
#include "stdio.h"
#include "math.h"//
void main(void){
int n,i;
double x=1,y=2,temp,sum=1,fleg=1;
printf("Type an integer...\nn=");
scanf("%d",&n);
for(i=1;i<n;i++){
temp=x;
x=y;
y=temp+x;
fleg*=-1;
sum+=x/y*fleg;
}
printf("%g\n",sum);
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
万杨1
2013-03-23 · 超过34用户采纳过TA的回答
知道答主
回答量:90
采纳率:0%
帮助的人:83.9万
展开全部
int sum=1;
double num;

signed int flag;

for(i=2;i<n;i++) {
flag=i%2?1:(-1);
num=i/(2*i-1);

sum+=(flag*num);
}
printf ("%d",sum);
追问
调试过了?
追答
没有调试过,就这么写的,思路比较简单啊,但是如果n特别大的话,会溢出,上面有个错了,sum应该申请为double的,printf修改下,应该可以运行的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式