下面程序的输出结果是______。 include using namespace std; int x; void funA(int&am下面程序的输出结果是______。include<iostream>using namespace std;int x;void funA(int&,int);void funB(int,int&);int main(){int first;int second=5;x=6;funA(first,second);funB(first,second);cout<<fir

题目
下面程序的输出结果是______。 include using namespace std; int x; void funA(int&am

下面程序的输出结果是______。

include<iostream>

using namespace std;

int x;

void funA(int&,int);

void funB(int,int&);

int main()

{

int first;

int second=5;

x=6;

funA(first,second);

funB(first,second);

cout<<first<<””<<second<<””<<x<<endl;

return 0;

}

void funA(int &a,int b)

{

int first;

first=a+b;

a=2*b;

b=first+4;

}

void funB(int u, int &v)

{

int second;

second=x;

v=second+4;

x=u+v;

}


相似考题
更多“下面程序的输出结果是______。 include<iostream> using namespace std; int x; void funA(int&am ”相关问题
  • 第1题:

    下面程序的输出结果是【】。 include using namespace std; int x; void funA(int&,i

    下面程序的输出结果是【 】。

    include<iostream>

    using namespace std;

    int x;

    void funA(int&,int);

    void funB(int,int&);

    int main()

    {

    int first;

    int second=5;

    x=6;

    funA(first,seconD) ;

    fimB(first,seconD) ;

    cout<<first<<" "<<second<<" "<<x<<end1;

    return 0;

    }

    void funA(int &a,int B)

    {

    int first;

    first=a+b;

    a=2*b;

    b=first+4;

    }

    void funB(int u,int &v)

    {

    int second;

    second=x;

    v=second+4;

    x=u+v;

    }


    正确答案:10 10 20
    10 10 20 解析:本题考核函数的引用传递。“引用”实际上是给一个已知变量起个别名,对引用的操作也就是对被它引用的变量的操作。函数funA的功能是将第二个实参的值乘以2再赋值给第一个实参(通过引用传递实现),函数funB的功能是将全局变量 x加上4再赋值给第二个实参,同时x等于第一个实参与第二个实参相加的和。

  • 第2题:

    下面程序输出的结果是( )。 include using namespace std; void swap(int

    下面程序输出的结果是( )。 #include <iostream> using namespace std; void swap(int &a,int &b){ int temp; temp=a; a=b; b=temp; } void main(){ int x=2; int y=3; swap(x,y); cout<<x<<y; }

    A.23

    B.32

    C.ab

    D.ba


    正确答案:B
    解析:函数的参数是引用,故能实现引用调用。

  • 第3题:

    下列程序段的输出结果是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


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

  • 第4题:

    有如下程序:include void fun(int& x, int y){int t=x;x=y;y=t;}int main (){int

    有如下程序: #include <iostream> void fun(int& x, int y){int t=x;x=y;y=t;} int main () { int a[2]={23,42}; fun(a[1],a[0]); std::cout<<a[0]<<","<<a[1]<<std::endl; return 0; } 执行后的输出结果是

    A.42,42

    B.23,23

    C.23,42

    D.42,23


    正确答案:B
    解析:本题考核函数的调用以及参数值的传递。函数fun中的第一个参数采用引用传值方式,函数中对形参值的改变同样作用于实参上;第二个参数采用按值传值方式,函数中对形参的操作不会影响到实参。所以main函数中调用fun函数后,a[1]的值被修改为a[0]的值,而a[0]的值没有改变。

  • 第5题:

    如下程序的输出结果是includevoid fun(int & X,inty){intt=x;x=y;y=t;}int main(){in

    如下程序的输出结果是 #include<iostream> void fun(int & X,inty){intt=x;x=y;y=t;} int main( ){ int a[2]={23,42}; fun(a[1],a[0]); std::cout<<a[0]<<","<<a[1]<<std::endl; return 0; }

    A.42,42

    B.23,23

    C.23,42

    D.42,23


    正确答案:B
    解析:参数X是引用传递,传递的是地址:参数Y是值传递,函数fun( )是做X与Y值交换,交换后X的值要被回传给a[1],此时a[1]=a[0]=23。

  • 第6题:

    下列程序段的输出结果是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