下列程序段的输出结果是includevoid fun(int * x,int * y){cout下列程序段的输出结果是 #include<iostream.h> void fun(int * x,int * y) { cout << * X << * y; *X=3; *y=4; } void main() { int x=1,y=2; fun(&y,&x); cout << X << y<<endl; {A.2143B.1212C.1234D.2112

题目
下列程序段的输出结果是includevoid fun(int * x,int * y){cout<<* X<<* y; *X=3;

下列程序段的输出结果是 #include<iostream.h> void fun(int * x,int * y) { cout << * X << * y; *X=3; *y=4; } void main() { int x=1,y=2; fun(&y,&x); cout << X << y<<endl; {

A.2143

B.1212

C.1234

D.2112


相似考题
更多“下列程序段的输出结果是#include<iostream.h>void fun(int * x,int * y){cout<<* X<<* y; *X=3; ”相关问题
  • 第1题:

    下列程序运行后的输出结果是()。includevoid fun(int,int,int*);void main(){int x,

    下列程序运行后的输出结果是( )。 #include<iostream.h> void fun(int,int,int*); void main() { int x,y,z; fun(5,6,&x); fun(7,x,&y); fun(x,y,&z); cout<<x<<","<<y<<","<<z<<endl; } void fun(int a,int b,int *c) { b+=a; *c=b-a; }

    A.5,5,5

    B.6,6,6

    C.5,6,7

    D.7,7,7


    正确答案:B
    解析:由程序中的main函数入手,分别调用fun函数,第一个调用中x参数为引用地址,调用后x的值为6,因为参数为地址,所以第二个调用中的x参数值为6,调用后y的计算结果为6。同理,z在第三个函数调用后z的值为6。

  • 第2题:

    下列程序段的输出结果是includevoid fun(int*x,int*y){cout<<*x<<*y;*X=3;*y=4;}vo

    下列程序段的输出结果是 #include<iostream.h> void fun(int*x,int*y) {cout<<*x<<*y; *X=3; *y=4; } void main() {int x=1,y=2; fun(&y,&x); cout<<X<<y<<endl; }

    A.2143

    B.1212

    C.1234

    D.2112


    正确答案:A

  • 第3题:

    下列程序段的输出结果是 include void fun(int * X,int * y) {cout < < * X < <

    下列程序段的输出结果是 #include<iostream.h> void fun(int * X,int * y) { cout < < * X < < * y; * X=3; * y=4; } void main( ) { int x=1,y=2; fun(&y,&x); cout < < X < < y < < end1; }

    A.2143

    B.1212

    C.1234

    D.2112


    正确答案:A
    解析:在fun函数中,x接收的是main函数中y的地址,所以*x值为2,同样,*y值为1,所以第1次输出的是21,第2次改变*x的值等同于改变y的值,改变*y的值也即改变x的值,所以第2次输出的是43。注意:C++语言中函数的传参方式中关于指针的应用。

  • 第4题:

    下列程序的运行结果是includevoid fun(int *a,int *B){int *k;k=a;a=b;b=k;}void m

    下列程序的运行结果是 #include<iostream.h> void fun(int *a,int *B) {int *k; k=a;a=b;b=k; } void main( ) {int a=3,b=6,*x=&a,*y=&b; fun(x,y); cout << a <<" "<< b; }

    A.63

    B.36

    C.编译出错

    D.0


    正确答案:B
    解析:函数的参数不仅可以是整型、实型、字符型等数据,还可以是指针类型。它的作用是将一个变量的地址传送到另一个函数中去。在本题解析中,我们试图将这一问题解释清楚!大家可以考虑一下利用下面这函数可不可以实现a和b的互换。swap(intx,inty){intt;t=x;x=y;y=t;}如果在main函数中用swap(a,B,会有什么结果呢?在函数调用开始时,a的值传送给x,b的值传递给y。执行完swap()函数后,x和y的值是互换了,但main()函数中的a和b并未互换。也就是说由于“单向传递”的“值传递”方式,形参值的改变无法传递给实参。为了使在函数中改变了的变量值能被main()函数所用,不能采取上述办法,而应该用指针变量做函数参数。在函数执行过程中使指针变量所指向的变量值发生变化,函数调用结束后,这些变量值的变化被保留下来,这样就实现了调用函数改变变量的值,在主调函数中使用这些改变了的值的目的。swap(int*p1,int*p2){intp;p=*p1;*p1=*p2;*p2=p;}注意交换*p1和*p2的值是如何实现的,如果写成下面这样就有问题了!swap(int*p1,int*p2){int*p;*p=*p1;/*此语句有问题:*/*p1=*p2;*P2=*p;}*p1就是a,是整型变量。而*p是指针变量p所指向的变量,但p中并无确切地址,用*p可能会造成破坏系统的正常工作状态。应该将*p1的值赋给一个整型变量,用整型变量作为过渡变量实现*p1和*p2的交换。

  • 第5题:

    下列程序运行后的输出结果是()。 include void fun(int,int,int*); void main() { i

    下列程序运行后的输出结果是( )。 #include<iostream.h> void fun(int,int,int*); void main() { int x,y,z; fun(5,6,&x); fun(7,x,&y); fun(x,y,&z); cout<<x<<","<<y<<","<<z<<end1; } void fun(int a,int b,int *c) { b+=a; *c=b-a; }

    A.5, 5, 5

    B.6, 6, 6

    C.5, 6, 7

    D.7, 7, 7


    正确答案:B
    解析:由程序中的main函数入手,分别调用fun函数,第一个调用中x参数为引用地址,调用后x的值为6,因为参数为地址,所以第二个调用中的x参数值为6,调用后y的计算结果为6。同理, z在第三个函数调用后z的值为6。