问题 单项选择题

有以下程序:
#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(~%s\n",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。

多项选择题
判断题