有以下程序 #include #include void fun (char *w, int m ) { char s, *p1, *p2; p1=w; p2=w+m-1; while ( p1

admin2019-04-24  35

问题 有以下程序
#include
#include
void fun (char *w, int m )
{ char s, *p1, *p2;
p1=w; p2=w+m-1;
while ( p1{
s=*p1; *p1=*p2; *p2=s;
p1++; p2--;
}
}
main()
{ char a[ ]="123456";
fun ( a, strlen(a) ); puts(a);
}
程序运行后的输出结果是( )。

选项 A、654321
B、116611
C、161616
D、123456

答案A

解析 函数fun()中w指向的为一个字符串的首地址,该函数中将p1指向字符串首地址,而将p2指向该字符串第m个元素,然后用while()循环实现这一段字符串首尾对应元素的互换,所以函数fun()的功能是把w指向的字符串从前m个字符逆序排列,输出的答案选A。
转载请注明原文地址:https://kaotiyun.com/show/uLRp777K
0

最新回复(0)