下列程序运行后的输出结果是()。 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) {

题目
下列程序运行后的输出结果是()。 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


相似考题
更多“下列程序运行后的输出结果是()。 #include<iostream.h> void fun(int,int,int*); void main() { i ”相关问题
  • 第1题:

    下面程序的运行结果是 include int fun(int a[ ] ,int n) { int result=1; for(in

    下面程序的运行结果是

    #include<iostream.h>

    int fun(int a[ ] ,int n)

    {

    int result=1;

    for(int i=1;i<n;i++)

    result=result * a[i] ;

    retum result;

    }

    void main( )

    {

    int a[3] ={3,4,5};

    cout

    A.12

    B.15

    C.20

    D.60


    正确答案:C
    解析:for循环执行2次,所以第一次 for循环为result=1 * a[1] =4,第二次for循环为result=4 * a[2] =20。

  • 第2题:

    以下程序运行后的输出结果是【】。 include void fun(int x,int y) {x=x+y;y=x-y

    以下程序运行后的输出结果是【 】。

    include<iostream.h>

    void fun(int x,int y)

    { x=x+y;y=x-y;x=x-y;

    cout<< x << "," <<y << " ,";}

    void main( )

    { int x=2,y=3;fun(x,y);

    cout<< x << "," << y << endl;}


    正确答案:3223
    3,2,2,3 解析:main函数和fun函数中的变量x和y都是局部变量,它们各自独立,在本题 fun函数中:接入实参的值传递:x=2,y=3,执行:x=x+y后,x=5,y=3,执行:x=x-y后,x=5,y=3,执行:y=x-y后,x=3,y=2。所以,第一次执行cout显示结果是3和2返回到main函数中,输出main函数中的x和y的值2,3。

  • 第3题:

    下列程序的输出结果是______。 include using namespace std; void fun(int &rf) {

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

    include<iostream>

    using namespace std;

    void fun(int &rf)

    {

    rf*=2;

    }

    int main()

    {

    int num=500;

    fun(num);

    cout<<num<<endl;

    return 0;

    }


    正确答案:1000
    1000 解析:本题考核引用作为函数参数的使用。引用作为形参时,它实际上就是实参,函数对形参的访问和修改就是对实参的访问和修改,题中函数fun对形参的操作是自增2倍,所以经过函数调用后,实参的值自增2倍,即输出1000。

  • 第4题:

    下面程序的运行结果为_____。 include void fun(int x=0,int y=0) { cout < < x < <

    下面程序的运行结果为_____。

    include<iostream.h>

    void fun(int x=0,int y=0)

    {

    cout < < x < < y;

    }

    void main( )

    {

    fun(5) ;

    }


    正确答案:50
    50 解析:本题考查的是函数的默认参数,如果一个函数中有多个参数,则默认参数应从右至左逐个定义,所以题目中x使用参数5,y使用默认参数0。

  • 第5题:

    以下程序的正确运行结果是()。includeint fun(int);void main(){int a=2,i;for(i=0;

    以下程序的正确运行结果是( )。 #include<iostream.h> int fun(int); void main() { int a=2,i; for(i=0;i<3;i++) cout<<fun(a)<<end1; cout<<end1; } int fun(int a) { int b=0; static int c=3; b++;c++; return(a+b+c); }

    A.4,5,6

    B.6,7,9

    C.7,8,9

    D.7,7,7


    正确答案:C

  • 第6题:

    下列程序段的输出结果是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++语言中函数的传参方式中关于指针的应用。

  • 第7题:

    下面程序的输出结果是【】。 include int d=1; int fun(int p){ static int d=5; d+=p;

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

    include<iostream.h>

    int d=1;

    int fun(int p){

    static int d=5;

    d+=p;

    cout<<d<<" ";

    return d;

    }

    void main(){

    int a:3;

    cout<<fun(a+fun(D) )<<end1;

    }


    正确答案:6 15 15
    6 15 15

  • 第8题:

    有以下程序:include using namespace std;void fun(int i,int j){ cout<<(i+j)<

    有以下程序: #include <iostream> using namespace std; void fun(int i,int j) { cout<<(i+j)<<end1; } void fun(int i) { cout<<i++<<end1; } int main() { int a=1; fun(A) ; return 0; } 该程序执行后的输出结果是( )。

    A.1

    B.2

    C.3

    D.4


    正确答案:A
    解析:本题考核函数重载这个知识点。函数fun有两种实现:第1种实现中,有两个int型形参,第2个实现中,是1个int型形参。由于这两种实现方式中形参的个数不同,形成了函数的重载。在主函数中,由于传递给函数fun()的实参为1个整型变量a,所以调用函数fun()的第2中实现,输出1。

  • 第9题:

    下列程序运行后的输出结果是()。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。

  • 第10题:

    下列程序的运行结果是()。 include void fun(int &a,int b=3) { static int i=2

    下列程序的运行结果是( )。 #include<iostream.h> void fun(int &a,int b=3) { static int i=2; a=a+b+i; i=i+a; } void main() { int x=5,y=2; fun(x,y); cout<<x<<","; fun(x); cout<<x<<end

    A.5,2

    B.7,11

    C.11,23

    D.9,23


    正确答案:D
    解析: 由程序中的主函数main入手,定义了变量x=5,y=2。然后调用fun函数,其中a为引用地址,其改变会影响实参的改变。fun函数中的i=2定义为静态变量,有效到文件结束。所以主函数中第一输出x值为函数fun中的a值,即9。而i=11。第二次调用fun函数时,x=9,i=11,所以a=9+11+3=23。

  • 第11题:

    假定a=3,下列程序的运行结果是()。includeint fun(int n);void main(){cout<<"Pleas

    假定a=3,下列程序的运行结果是( )。 #include<iostream.h> int fun(int n); void main() { cout<<"Please input a number:"; int a,result=0; cin>>a; result=fun(a); cout<<result<<end1; } int fun(int n) { int p=1,result=0; for(int i=1;i<=n;i++) { p*=i; result +=p; } return result; }

    A.4

    B.8

    C.9

    D.20


    正确答案:C
    解析:由程序main主函数入手,调用fun函数获得返回值result输出。题目中假定a=3,即调用语句fun(a)中的输入参数为a,进入 fun函数,在for循环中当i小于等于n,即输入参数3时,循环3次执行“p*=i;result+=p;”语句。即执行3次p=p*i,result=result+p, result的结果为9。返回的fun函数结果为9,即“coutresultend1;”输出9。

  • 第12题:

    有以下程序 include floatfun(int x,int y) {return(x+y);}void main() {int a=2,b

    有以下程序 #include<iostream.h> floatfun(int x,int y) {return(x+y);} void main() {int a=2,b=5,c=8; tout<<fun((int)fun(a+c,b),a-C);} 程序运行后的输出结果是

    A.编译出错

    B.9

    C.21

    D.9


    正确答案:B
    解析:本题的运算过程是fun((int)fun(a+c,b),a-c),fun((int)fun(10,5),2-8),fun((int)15.000000,-6),thn(15,-6)=9。

  • 第13题:

    阅读下列程序: include void fun(int n) { int x(5); static int y(10); if(n>0) {

    阅读下列程序:

    include<iostream.h>

    void fun(int n)

    {

    int x(5);

    static int y(10);

    if(n>0)

    {

    ++x;

    ++y;

    cout<<x<<","<<y<<endl;

    }

    }

    void main()

    int m(1);

    fun(m);

    }

    则该程序的输出结果是______。


    正确答案:611
    6,11 解析:由主函数mian入手,首先定义变量m等于1,然后调用fun函数。fun函数中y为静态数值,等于10,作用域为到本文件结束。所以y加1后,主函数中y的值也为11。其中函数中x的加1运算调用的是函数中的x等于5的变量,作用域为由定义到文件结束,即主函数中输出的x值为6。所以答案为6,11。

  • 第14题:

    阅读下面程序:include int fun( int a, int b ){int c;c=a*b;return c;}void main()

    阅读下面程序:

    include <iostream.h>

    int fun( int a, int b )

    {

    int c;

    c=a*b;

    return c;

    }

    void main()

    {

    int a=3,b=5,c=4,x=0;

    x=fun(fun(a, b),c);

    cout<<x<<end1;

    }

    其运行结果是【 】。


    正确答案:60
    60

  • 第15题:

    下面程序的运行结果是______。 include void fun(int &a,int b=3) { static int

    下面程序的运行结果是______。

    include<iostream.h>

    void fun(int &a,int b=3)

    {

    static int i=2;

    a=a+b+i;

    i=i+a;

    }

    void main()

    {

    int x=5,y=2;

    fun(x,y);

    cout<<x<<",";

    fun(x);

    cout<<x<<endl;

    }


    正确答案:923
    9,23

  • 第16题:

    有以下程序:includeFloat fun(int x, int y){return(x+y) ;}void main( ){int a=2,

    有以下程序: #include<iostream.h> Float fun(int x, int y) { return(x+y) ;} void main( ) { int a=2,b=5,c=8; cout < < fun((int) fun(a+c, b) ,a-c) ;} 程序运行后的输出结果是

    A.编译出错

    B.9

    C.21

    D.9.0


    正确答案:B
    解析:本题的运算过程是fun((int) fun (a+c, b) ,a-c) ,fun((int) fun(10,5) ,2-8) ,fun ((int) 15.000000,-6) ,fun(15,-6) =9。

  • 第17题:

    以下程序的输出结果是_____。 include void fun( ) {static int a=0; a+=2;cout < <

    以下程序的输出结果是_____。

    include<iostream.h>

    void fun( )

    { static int a=0;

    a+=2;

    cout < < a < < " ";}

    void main( )

    { int cc;

    for(cc=1;cc<4;cc++)

    fun( ) ;

    cout < < endl;}


    正确答案:2 4 6
    2 4 6 解析:本题考查静态局部变量的使用。用关键字 static声明的局部变量为“静态局部变量”,其值在函数调用结束后不消失而保留原值,即其占用的存储单元不释放,在下一次调用该函数时,该变量已有值,就是上一次函数调用结束时的值。

  • 第18题:

    以下程序输出结果是 ______。includevoid fun(int x,int y,int z){z=x+y;}void main

    以下程序输出结果是 ______。 #include<iostream.h> void fun(int x,int y,int z){z=x+y;} void main() { int a=10; fun (2,2,a); cout<<a; }

    A.0

    B.4

    C.10

    D.无定值


    正确答案:C

  • 第19题:

    假定n=3,,下列程序的运行结果是()。includeint Fun(int m)void main(){cout<<"Pleas

    假定n=3,,下列程序的运行结果是( )。 #include<iostream.h> int Fun(int m) void main() { cout<<"Please input a number:"; int n,s=0; cin>>n; s=Fun(n); cout<<s<<endl; } int Fun(int m) { iht p=1,s=0; for (int I=1;I<=m;I++) { p*=I; S+=p; } return s; }

    A.7

    B.9

    C.8

    D.10


    正确答案:B

  • 第20题:

    以下程序的输出的结果是()。include int x=3;void main(){void incre();int i;for (

    以下程序的输出的结果是( )。#include <iostream.h>int x=3;void main(){ void incre(); int i; for (i=1;i<x;i++) incre();}Void incre(){ static int x=1; x*=x+1; cout<<x<<"";}

    A.3 3

    B.2 2

    C.2 6

    D.2 5


    正确答案:C

  • 第21题:

    以下程序的输出的结果是()。includeint x=3:void main(){void fun();int i;for(i=1;

    以下程序的输出的结果是( )。 #include<iostream.h> int x=3: void main() { void fun(); int i; for(i=1;i<x;i++) fun(); } void fun() { static int x=1; x*=x+1; cout<<x<<" "; }

    A.3,3

    B.2,2

    C.2,6

    D.2,5


    正确答案:C

  • 第22题:

    下面程序的运行结果是include < iostream.h >int fun ( int a[ ],int n){int result=1;for(int

    下面程序的运行结果是 #include < iostream.h > int fun ( int a[ ],int n) { int result=1; for(int i=1;i<n;i++) result=result*a[i]; return result; } void main( ) { int a[3]={3,4,5}; cout << fun(a,

    A.12

    B.15

    C.20

    D.60


    正确答案:C
    解析:for循环执行2次,所以第一次for循环为result=1*a[l]=4,第二次for循环为result=4*a[2]=20。

  • 第23题:

    下列程序段的输出结果是 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++语言中函数的传参方式中关于指针的应用。