关于sum真的很懵啊啊啊
不明白sum的意思和为什么声明那赋值0,还有下面的sum = sum + temp;希望有大佬可以给出解答呜呜,感谢!!!!!
#include <stdio.h>
#include <math.h>
int main()
{
unsigned long long sum = 0;
unsigned long long temp;
unsigned long long weight;
int i;
for (i=0; i < 64; i++)
{
temp = pow(2, i);
sum = sum + temp;
}
weight = sum / 25000;
printf("舍罕王应该给予达依尔%llu粒麦子!\n", sum);
printf("如果每25000粒麦子为1kg,那么应该给%llu公斤麦子!\n", weight);
return 0;
} sum = sum + temp;
这就是字面意思,一个累加器,不知道如何进一步解释
sum=0也是字面意思,也不知道如何解释 之所以先将sum赋值为0,这是因为一会要用到sum的值,所以必须赋值,不赋值的话会警告
在for循环里面,i = 0的时候,temp = 1,sum = 0(之前赋值的sum = 0) + 1 = 1;
i = 1的时候,temp = 2,sum = 1(i = 0时候for循环赋的值) + 2 = 3;
i = 2的时候,temp = 4,sum = 3(i = 1时候for循环赋的值) + 4 = 6;
......
另外,sum= sum + temp 可以写成sum += temp; sum = 0 是一次初始化 , 就是告诉编译器创建一个变量 , 叫 sum
sum = sum + temp 是自增运算
例:
sum = 0; temp = 1则sum = sum + temp 就是 sum = 0 + 1 = 1
然后 temp = 2 , sum = sum + temp 就是 sum = 1(上一次循环sum不是1嘛) + 2 = 3
这时 , sum = 3
以此类推 此方星河 发表于 2021-11-7 08:00
之所以先将sum赋值为0,这是因为一会要用到sum的值,所以必须赋值,不赋值的话会警告
在for循环里面,i =...
感谢大佬!
柿子饼同学 发表于 2021-11-7 13:17
sum = 0 是一次初始化 , 就是告诉编译器创建一个变量 , 叫 sum
sum = sum + temp 是自增运算
例:
谢谢大佬! wp231957 发表于 2021-11-7 07:54
sum = sum + temp;
这就是字面意思,一个累加器,不知道如何进一步解释
sum=0也是字面意思,也不知道如何 ...
!谢谢
页:
[1]