首先你看reverse函数完成得功能是啥,就是把数组倒置嘛
reverse(b, 8)是什么意思?
就是把数组b的前8个元素倒置
调用这个函数之后
数组b中的元素为8,7,6,5,4,3,2,1,9,10
然后你在看main函数中下面的那个for循环完成什么操作
很明显是求b中下标为6到9的这几个元素的和
即2+1+9+10 所以s = 22嘛
你注意到调用revers函数的参数了吗,是8,而不是10
所以只是把1-8逆置了一下
最后求和=2+1+9+10 = 22
数组有10个数,但是只是翻转了8个数,翻转后的结果是8,7,6,5,4,3,2,1,9,10
下标6到9的数是2,1,9,10 和为22
主函数调用函数reserve(b,8),把8传递给函数中n。并不是像你想的那样把数组完全逆置。运算后数组应该是8 7 6 5 4 3 2 1 9 10.所以结果是2 +1 +9 +10=22
把代码往机器一敲就行了