问题 单项选择题

下列程序的输出结果是( )。

void f(int*x,int*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<q)

f(p,q);p++;q--;

for(i=0;i<8;i+)printf("%d,",a[i]);

A.8,2,3,4,5,6,7,1

B.5,6,7,8,1,2,3,4

C.1,2,3,4,5,6,7,8

D.8,7,6,5,4,3,2,1

答案

参考答案:D

解析: 函数f()的功能是对两个数据互换。在主函数中指针变量p和q分别指向数组a[8]的首和尾,在while循环中实现从首尾开始数组元素的互换操作。

单项选择题 案例分析题
单项选择题