a昊a 2019-06-20 12:30 采纳率: 66.7%
浏览 198
已采纳

C语言循环求值问题求解

先上代码

#include <stdio.h>
int main(void)
{
    long lLimit;
    float fSum1 = 0.0,fSum2 = 0.0;
    printf("请输入一个数值\n");
    scanf("%ld",&lLimit);
    for(int i = 1; i <= lLimit; i ++)
        fSum1 += (1/i);
        for(int i = 1; i <= lLimit; i ++)
        {
            int a = 1;
            for(int j = 1;j < i; j++)
            a *= -1;
            fSum2 += a*(1/i);
        }
        printf("1 + 1/2 + 1/3 +....前%ld项和为 %f\n",lLimit,fSum1);
        printf("1 - 1/2 + 1/3 - 1/4 + 1/5....前%ld项和为%f \n",lLimit,fSum2);
        printf("两个数列总和为 %f \n",fSum1+fSum2);
        return 0;
}

程序的目的看最后的两个printf
下面是运行结果
图片说明
不论我输入什么数字都是这个结果。
求大神指出问题。

  • 写回答

3条回答 默认 最新

  • xb1667 2019-06-20 13:13
    关注

    fSum1 += (1/i); 修改为 fSum1 += (1.0/i);
    fSum2 += a*(1/i); 修改为 fSum2 += a*(1.0/i);

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 WPF使用Canvas绘制矢量图问题
  • ¥15 用三极管设计一个单管共射放大电路
  • ¥15 孟德尔随机化r语言运行问题
  • ¥15 pyinstaller编译的时候出现No module named 'imp'
  • ¥15 nirs_kit中打码怎么看(打码文件是csv格式)
  • ¥15 怎么把多于硬盘空间放到根目录下
  • ¥15 Matlab问题解答有两个问题
  • ¥15 LCD12864中文显示
  • ¥15 在使用CH341SER.EXE时不小心把所有驱动文件删除了怎么解决
  • ¥15 gsoap生成onvif框架