C语言的一道题。 这题为什么选a,怎么算都是b?

2025-02-26 16:28:49
推荐回答(5个)
回答1:

首先你看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嘛

回答2:

你注意到调用revers函数的参数了吗,是8,而不是10
所以只是把1-8逆置了一下
最后求和=2+1+9+10 = 22

回答3:

数组有10个数,但是只是翻转了8个数,翻转后的结果是8,7,6,5,4,3,2,1,9,10
下标6到9的数是2,1,9,10 和为22

回答4:

主函数调用函数reserve(b,8),把8传递给函数中n。并不是像你想的那样把数组完全逆置。运算后数组应该是8 7 6 5 4 3 2 1 9 10.所以结果是2 +1 +9 +10=22

回答5:

把代码往机器一敲就行了