A-A+

有以下程序: void f(int*x iht * y) { int t; t=*x;*x;

2022-08-12 18:22:19 问答库 阅读 197 次

问题详情

有以下程序: void f(int*x,iht * y) { int t; t=*x;*x;=*y;*y=t; } main() { int a[8]={1,2,3,4,5,6,7,8},i,*p,*q; p=a;q=&a[7]; while(p) { f(p,q);p++;q--;} for(i=0;i<8;i++)printf("%d,",a[i]); } 程序运行后的输出结果是【 】。


请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:87654321
函数f是将x、y指针的内容互换,整个while循环是将a[0]与a[7]互换,a[2]与a[5]互换,a[3]与a[4]互换。

考点:程序