我正在尝试使用 C 来对 for 循环中的值求和。变量 x = 1
的初始值,我想将其加倍一定次数并将结果相加。我已经做了 for 循环,但我的总和总是偏离初始值。
例如,如果x = 1
,则模式应为:
1, 2, 4, 8, 16
...总计
应为31
。不幸的是,总数
减少了 1。
int x = 1;
int y = 10;
int total;
for(int i = 1; i < y; i++)
{
x *= 2;
total += x;
}
printf("Total: %d\n", total);
这个差了一位。如何让循环以 1
而不是 2
开始?
最佳答案
交换 for 循环体中的两个语句。另外,如果您想将所有这些移至函数中,最好将总计初始化为 0。
关于c - 总和不正确 - C 中的 For 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7382064/