下列程序运行后的输出结果是( )。includeusing namespace std;void f1(int&x) { x++; }void f2(int x) { ++x; }int main(){int x=10,y=12;f1(x);f2(y);coutA. 22B.23C.24D.程序有误

题目
下列程序运行后的输出结果是( )。includeusing namespace std;void f1(int&x) { x++; }void f2(int x) { ++x; }int main(){int x=10,y=12;f1(x);f2(y);cout< return 0;}

A. 22

B.23

C.24

D.程序有误


相似考题
更多“下列程序运行后的输出结果是( )。#includeusing namespace std;void f1(int&x) { x++; }void f2(int x) { ++x; }int main(){int x=10,y=12;f1(x);f2(y);cout< return 0;} ”相关问题
  • 第1题:

    有如下程序: #include<iostream> usingnamespacestd; voidf1(int&X,int&y){intz=x;x=y;y=z;}voidf2(intX,inty){intz=x;x=y;y=z;}intmain(){ intx=10,y=26; f1(x,y); f2(x,y); cout<<y<<endl; return0; } 运行时的输出结果是( )。

    A.10

    B.16

    C.26

    D.36


    正确答案:A
    A。【解析】该题考查了函数参数传递的两种方式:引用传递和值传递。引用传递时X和Y会交换,而传值时二者不交换,因此选10。

  • 第2题:

    有以下程序: int fa(int x) { return x*x; } int fb(int x) { return x*x*x; } int f(int (*f1)(),int (* f2)(),int x) { return (*f2)(x)-(*f1)(x); } main() { int i; i=f(fa,fb,2); printf("%d\n",i); } 程序运行后的输出结果是( )

    A.-4

    B.1

    C.4

    D.8


    正确答案:C

  • 第3题:

    有以下程序: int fa(int x) { return x *x;} int fb(int x) { return x *x *x;} int f(int( *f1)( ),int( *f2)( ),int x) { return f2(x)-f1(x);} main( ) { int i; i=f(fa,fb,2);printf("%d\n",i); } 程序运行后的输出结果是

    A.-4

    B.1

    C.4

    D.8


    正确答案:C
    解析:本题考点是函数之间的参数传递。

  • 第4题:

    有以下程序: int fa(int x) { return x*x;) int fb(int x) { return x*x*x;} int f(int (*f1)().int (*f2)(),int x) { return f2(x)-f1(x); } main() { int i; i=f(fa,fb,2);printf("%d\n",i); } 程序运行后的输出结果是( )。

    A.-4

    B.1

    C.4

    D.8


    正确答案:C
    解析:函数f()有3个形式参数f1、f2和x,其中f1、f2是指向函数的指针变量。在main()函数中执行了函数调用“f(fa,fb,2)”,从而使f()的形式参数f1指向了fa,形式参数f2指向了fb,把实参2传给了形参变量x。函数f()中的return语句相当于“fb(2)-fa(2)” (fb(2)的返叫值为2*2*2=8,fa(2)返回值为2*2=4)即(8-4),值为4。函数f()执行后把返回值4赋给了i,输出i的值是4。所以4个选项中C正确。

  • 第5题:

    有如下程序:

    #include<iostream>

    usingnamespacestd;

    voidf1(int&X,int&y){intz=X;x=y;y=z}

    voidf2(intX,inty){intz=x;x=y;y=z}

    intmain( ){

    intx=10,y=26

    f1(x,y);

    f2(X,y);

    cout<<y<<endl;

    return0;

    }

    运行时的输出结果是( )。

    A.10

    B.16

    C.26

    D.36


    正确答案:A
    A。【解析】该题考察了函数参数传递的两种方式,印引用传递和值传递,引用传递时x和Y会交换,而传值时二者不交换,因此选10。