A-A+
有以下程序: #include<string.h> void f(char*s char*t
问题详情
有以下程序: #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。