您的位置:首页 > 编程语言 > C语言/C++

关于C语言求几个分数之和的问题

2018-02-12 14:11 375 查看
#include <stdio.h>

int main()
{
int n;
int i;
double ret=0.0;
int sign = 1;

scanf("%d", &n);
for ( i=1; i<=n; i++ ) {
ret += 1.0*sign/i;
sign = -sign;
}
printf("%f\n", ret);

return 0;
上述程序是计算1-1/2+1/3-1/4+......,用sign这个变量记录每次循环正负值的变化,并称到1.0上。ret放置最后的和,设置成double类型。因为分数是浮点数。1.0*sign是为了使结果变成浮点数,仅仅sign/i只能等于0。
当然,也可以再for循环里放入if进行判断,如果i是偶数,就减,奇数就加。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: