单项选择题

有以下程序:
#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