A-A+

有以下程序: #include<string.h> void f(char*s char*t

2022-08-05 19:55:40 问答库 阅读 171 次

问题详情

有以下程序: #include<string.h> void f(char*s,char*t) { char k; k=*s; *s=*t; *t=k; s++; t--; if(*s) f(s,t); } main() {char str[10]="abcdefg",*p; p=str+strlen(str)/2+1; f(p,p-2); printf(~%sn",str); } 程序运行后的输出结果是 ______。
A.abcdef
B.gfedcba
C.gbcdefa
D.abedcfg请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:B
解析:p=str+strlen(str)/2+1=str+4,f(p,p-2)的功能是将p[4]与p[2]互换,p[5]与p[1]互换,p[6]与p[0]互换,最后的结果为gfedcba。

考点:程序