第27题为什么输出的不是1 7 9

img

首先f(a+1)函数传入的地址是&a[1],他的值是7.


然后在while循环里判断 a[0]<=10这里的a的地址是main函数里的&a[1],他的值是7,
所以在f函数里的a[0]是小于等于10的,打印出其值7
然后i++,f函数里的新a[i]指向main函数里的a数组的第三个数,即17,他的值大于10,所以退出循环。


所以结果就是打印出7