我想问一下大家,我算的是3+5+7=15啊,为什么答案是18呀
#include <stdio.h>
int f(int b[], int m, int n)
{
int i, s = 0;
for (i = m; i <=n; i = i + 2)
s = s + b[i];
return s;
}
int main()
{
int x, a[] = { 1,2,3,4,5,6,7,8,9 };
x = f(a, 3, 7);
printf("%d\n", x);
}
答案可不就是18嘛,你计算的是数组第3,5,7位,而数组是从0开始的,012345678,3对应的数字是4,5对应的数字是6,7对应的数字是8.4+6+8可不就是18。你要想得15,应该是(2,4),而不是(3,7)。