9.20 *(ptr+y)就是a[y] 就是a[y]与8的比较,a[y]始终小于8,所以就是6
9.22 s[0]~s[5]分别为0(s[0]未初始化,初始值要看编译器对未初始局部变量处理方式而定),C,D,E,F,G,fun函数就是从G开始往前找到E,取E的下标
5.5 就如上面所说,sum是一个未初始化局部变量,一般来说初始值是函数栈空间中未定义的值,除非有些编译器会进行代码优化。
我一个一个回答,身边没有本子,给你打字说,9.20:
指针prt指向数组a的第一个值,也就是2,开始第一个循环,y=0,那么prt+y也就是指指针没变化,还是2,2<8,所以z的值为2,进入下一个循环,y=1,prt+y=4,4<8,z=4,进入下一个循环,y=2,prt+y=6,6<8,z=6,进入下一个循环,y=3,不满足y<3,循环终止,z为6
前两个题手工写上的答案都是正确的,最后一题的判断也是正确的,显然题有错。你要问什么呢?