写出下列程序的执行结果。 swap(p1,p2) int*p1,*p2; {int p; p=*p1;*p1=*p2;*p2=p; } main() {int a,b,*p1,*p2; scanf("%d%d",&a,&B); p1=&a;p2=&b; if(a<B)swap(p1,p2); printf("\na=%d,b=%d\n",a,B); } 若a=7,b=8,则程序的运行结果为( )。

题目

写出下列程序的执行结果。 swap(p1,p2) int*p1,*p2; {int p; p=*p1;*p1=*p2;*p2=p; } main() {int a,b,*p1,*p2; scanf("%d%d",&a,&B); p1=&a;p2=&b; if(a<B)swap(p1,p2); printf("\na=%d,b=%d\n",a,B); } 若a=7,b=8,则程序的运行结果为( )。


相似考题
更多“写出下列程序的执行结果。 swap(p1,p2) int*p1,*p2; {int p; p=*p1;*p1=*p2;*p2=p; } main() {int ”相关问题
  • 第1题:

    分析下面函数 swap(int *p1,*p2) {int *p; *p=*p1;*p1=*p2;*p2=*p; } 则该程序功能为( )

    A.交换*p1和*p2的值

    B.正确,但无法改变*p1和*p2的值

    C.交换*p1和*p2的地址

    D.可能造成系统故障,因为使用了空指针


    正确答案:D

  • 第2题:

    要定义两个指针变量,下面代码正确的是

    A.int *p1,*p2;

    B.int *p1, int *p2;

    C.int* p1,p2;

    D.int *(p1,p2);


    FILE *fp

  • 第3题:

    分析下面函数,以下说法正确的是 。 swap(int *p1,int *p2) { int *p; *p=*p1; *p1=*p2; *p2=*p; }

    A.交换*p1和*p2的值

    B.正确,但无法改变*p1和*p2的值

    C.交换*p1和*p2的地址

    D.可能造成系统故障,因为使用了空指针


    可能造成系统故障,因为使用了空指针

  • 第4题:

    分析下列程序:includemain(){ int*p1,*p2,*p;int a=6,b=9;p1=&a;p2=&b;if(a

    分析下列程序: #include<stdio.h> main() { int*p1,*p2,*p; int a=6,b=9; p1=&a;p2=&b; if(a<b){p=p1;p1=p2;p2=p;} printf("%d,%d",*p1,*p2); printf("%d,%d",a,b); } 程序的输出结果为( )。

    A.9,6 6,9

    B.6,9 9,6

    C.6,9 6,9

    D.9,6 9,6


    正确答案:A
    解析:通过p1=&a,p2=&b分别将a、b的地址赋给指针p1、p2,接着执行if语句,发现ab成立,则通过交换p1、p2的值,即交换a、b所在存储单元的地址,但是a、b的值并没有发生变化。

  • 第5题:

    分析下面函数,以下说法正确的是 swap(int *p1,int *p2) { int *p; *p=*p1; *p1=*p2; *p2=*p; }

    A.交换*p1和*p2的值

    B.正确,但无法改变*p1和*p2的值

    C.交换*p1和*p2的地址

    D.可能造成系统故障,因为使用了空指针


    A