有以下程序:
main()
char str[]="xyz", *ps=str;
while(*ps) ps++;
for(ps--;ps-str>=O;ps--)
puts(ps);
执行后的输出结果是( )。
A) yz
xyz
B) z
yz
C) z
yz
xyz
D) x
xy
xyz
参考答案:C
解析: 执行while循环,使指针变量ps指向字符串“xyz”的字符串结束标志,然后执行for循环,先执行ps--,使ps指向字符‘z’,故puts(ps)输出结果为z;再次执行ps--,使ps指向字符‘y’,故puts(ps)输出结果为yz;再次执行ps--,使ps指向字符‘x’,故puts(ps)输出结果为xyz,退出循环。所以,C选项为所选。