A-A+
有以下程序 main() { char atr[]=xyz *ps=str; while
问题详情
有以下程序 main() { char atr[]="xyz",*ps=str; while(*ps)ps++; for(ps--;ps-str>=0;ps--) puts(ps); } 执行后输出结果是
A.yz xyz
B.x 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”,退出循环。