计算SUM的值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了计算SUM的值相关的知识,希望对你有一定的参考价值。

参考技术A 楼主,不知道你什么意思啊
c中出现逗号,只能是逗号运算.但你的表达式....
1.要是这样理解,将num++,sum++,++num进行逗号运算后赋给sum,那应该这样写:
sum=(num++,sum++,++num)
这样sum=++num,即sum=8
2.这样理解,sum=num++,sum++,++num分别是逗号运算的三项,那就从左到右一个个计算,sum的值就是一楼的结果了
参考技术B 问题出在n是整型,以及语句sum+=1/n;
修改办法是将
sum+=1/n;
修改为
sum+=1.0/n;
即1.0是浮点数,使运算采用浮点运算,而非整数运算。
除了这个问题,循环for(i=0;i
0;i--)

sum+=1.0/i;

计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值(类型转换)

思路:可以将上式分解成为分母为奇数项的总和与偶数项的总和,然后两项进行相减。

注意:在求分数相加减时应该要注意定义变量的类型应该是double型。

 1 #include<stdio.h>
 2 int main()
 3 {
 4     int i;
 5     double sum;
 6     double sum1 = 0;
 7     double sum2 = 0;
 8     //奇数项和
 9     for (i = 1;i < 100;i += 2)
10     {
11         sum1 =sum1 + 1.0 / i;
12     }
13     printf("%d
",sum1);
14     //偶数项和
15     for (i = 2;i <= 100;i += 2)
16     {
17         sum2 = sum2 + 1.0 / i;
18     }
19     printf("%d
", sum2);
20     sum = sum1 - sum2;
21     printf("%f
",sum);
22     return 0;
23 }


在for循环里面的sum1 = sum1 + 1.0 / i;其中定义sum1的目的是为了储存每一次计算奇数项时的总和,而

其中的1.0,是因为分数计算的输出结果不一定为整型,改为1.0可以将1.0 / i的结果改为double型,便可以储存多位小数。


以上是关于计算SUM的值的主要内容,如果未能解决你的问题,请参考以下文章

使用 sum() over(partition by) 逐一计算行中的值

C语言 计算1+3+5+7+9+…+2*n-1的值

7.03 对某列的值求和

写一个函数计算但参数为n(n很大)时的值1-2+3-4+5-6+7……+n。(考虑程序执行效率)

在 SQL 中计算不同日期之间 sum() 的差异

在不向行/列添加值的情况下计算 SUM?