卡通农场社区收集:C语言问题!!以下程序运行后,输出结果是?请详细说明。谢谢!

来源:百度文库 编辑:高校问答 时间:2024/04/28 03:17:15
#inchude <string.h>
fun(char *w, int n)
{ char t, *s1,*s2;
s1=w; s2=w+n-1;
while(s1<s2)
{ t=*s1++;
*s1=*s2--;
*s2=t;
}
}
main()
{ char *p;
p="1234567";
fun(p,strlen(p));
puts(p);
}
A)1234567 B)7654321 C)1711717 D)7177171
按你说答案因是B了
可答案是C呀

fun函数是将字符串w的前n字符转置。
main里面调用fun(p,strlen(p)),则是将字符串p整个地转置。