以下程序的输出结果是______。 #include <stdio.h> void swap(int *a, int *b) { int *t; t=a;a=b;b=t; } main( ) { int i=3

admin2010-09-05  18

问题 以下程序的输出结果是______。
   #include <stdio.h>
   void swap(int *a, int *b)
   { int *t;
     t=a;a=b;b=t;
   }
   main( )
   { int i=3,j=5,*p=&i,*q=&j;
     swap(p,q); printf("%d %d\n",*p,*q);
    }

选项

答案3 5

解析 函数swap(int *a,int *b)的功能是实现*a和*b中两个数据的交换,在主函数中调用swap(p,q)后,参形指针变量a和b分别指向i和j,在swap(int *a,int *b)执行完后,指针变量a和b分别指向j和i,而指针变量p,q所指向变量的值没有发生变化,所以输出结果为3 5。
转载请注明原文地址:https://kaotiyun.com/show/PYWp777K
0

最新回复(0)