网上找的练习题 超纲了 知道答案了 但是不知道怎么得到的 有哪位可以帮忙讲解一下解题思路吗
这个题并不是很难,首先我们要明白数组名代表首元素地址,而a[7]是最后一个元素的地址,while循环实现的功能实际上是将整个数组逆序,因为函数ff的功能实际上是利用传址操作,来把两个地址中放的元素通过*解引用操作符来直接交换,地址也是可以比较大小的,因为元素在内存中是以二进制形式来存储的,而数组很明显每一个元素都有自己的地址,他们是连续的,从左至右递增,指针指向的其实就是地址,所以当p<q时,循环停止,这和内存的存储有一定的联系
两头向中间推进,对应元素交换
函数就是交换两个值
这么长一段代码,你是哪句话不理解
类似这种题,你敲进IDE里断点一步一步跟就非常清楚明白了