下列程序的输出结果为includeint func (int n){if ( n 下列程序的输出结果为 #include<iostream.h> int func (int n) { if ( n <1)return l; else return n+func ( n-1 ); return O; } void main( 0 { cout <<func(5)<<end1; }A.0B.10C.15D.16

题目
下列程序的输出结果为includeint func (int n){if ( n <1)return l;else return n+

下列程序的输出结果为 #include<iostream.h> int func (int n) { if ( n <1)return l; else return n+func ( n-1 ); return O; } void main( 0 { cout <<func(5)<<end1; }

A.0

B.10

C.15

D.16


相似考题
更多“下列程序的输出结果为includeint func (int n){if ( n 下列程序的输出结果为 #include<iostream.h> int func (int n) { if ( n <1)return l; else return n+func ( n-1 ); return O; } void main( 0 { cout <<func(5)<<end1; }A”相关问题
  • 第1题:

    下列程序的输出结果为

    #include< iostream. h>

    int func(int n)

    {

    if〔n<1)return 1;

    else return n+tune(n-1):

    return 0;

    }

    void main()

    {

    cout<<

    A. 0

    B.10

    C.15

    D.16


    正确答案:D

  • 第2题:

    下列程序的输出结果是includeint b=2;int func(int *a) {b+=*a;return(b) ;}void m

    下列程序的输出结果是 #include<iostream.h> int b=2; int func(int *a) {b+=*a;return(b) ;} void main( ) { int a=2,res=2; res+=func(&a) ; cout<<res;}

    A.4

    B.6

    C.8

    D.10


    正确答案:B
    解析:在函数体语句中的b+=*a;的 *是指针运算符(也称间接访问运算符),*a就是main函数中a的值。

  • 第3题:

    有如下程序:includeint func(int a, int b){return(a+b) ;}void main( ){int x=2,y

    有如下程序: #include<iostream.h> int func(int a, int b) { return(a+b) ;} void main( ) { int x=2,y=5,z=8,r; r=func(func(x,y) ,z) ; cout < < r; } 该程序的输出的结果是

    A.12

    B.13

    C.14

    D.15


    正确答案:D
    解析:在语句r=func(func(x, y) ,z) ;中,fun(x, y) 是一次调用函数,它的值作为func另一次调用的实参。注意本题调用两次函数。

  • 第4题:

    有以下程序()。includeint f(int n){if(n==1)return 1;elsereturn f(n-1)+1;}void m

    有以下程序( )。 #include<iostream.h> int f(int n) { if(n==1)return 1; else return f(n-1)+1; } void main() { int i,j=-; for(i=1;i<3;i++) j+=f(i); cout<<j<<endl; } 程序运行后输出结果是( )。

    A.4

    B.3

    C.2

    D.1


    正确答案:B

  • 第5题:

    下列程序的运行结果是______。includelong func(int x){ long p;if(x==O‖x==1)return(1)

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

    include<stdio.h>

    long func(int x)

    { long p;

    if(x==O‖x==1)

    return(1);

    p=x*func(x-1);

    return(p);

    }

    main()

    { printf("%d\n",func(4));

    }


    正确答案:

    本题考查函数的循环调用。p=x*func(x-1),当x=4时,不满足if语句的条件,p=4*func(3), x=3也不满足条件,则func(3)=3*func(2),func(2)=2*func(1),x=1满足条件return(1),则输出结果为 4*3*2*1=24。

  • 第6题:

    有以下程序includeint f(int n){if(n==1 )return 1;else return f(n-1 )+ 1;}void

    有以下程序#include<iostream.h>int f(int n){if(n==1 )return 1;else return f(n-1 )+ 1;}void main() {int i,j=0;for(i=1 ;i<3;i++) j+=f(i);cout<<j<<end1;}程序运行后的输出结果是( )。

    A.4

    B.3

    C.2

    D.1


    正确答案:B

  • 第7题:

    有以下程序 include int f(int n) {if(n==1)return1; else return f(n-1)+1} voidm

    有以下程序 #include<iostream.h> int f(int n) {if(n==1)return1; else return f(n-1)+1} voidmain() {int i,j=0; for(i=l i<3;i++)=i+=f(i); cout<<j;} 程序运行后的输出结果是( )。

    A.4

    B.3

    C.2

    D.1


    正确答案:B

  • 第8题:

    下列程序的输出结果为【 】。ineludeint &max(int &x, int &y){return (x

    下列程序的输出结果为【 】。

    inelude<iostream. h>

    int &max(int &x, int &y)

    {return (x>y? x: y); }

    void main() {

    int n=3, m=12;

    max(m, n)++

    cout<<"m="<<m<<", n= "<<n<<end1;

    }


    正确答案:m=13n=3
    m=13,n=3 解析:本题考察引用作为形参进行参数传递的知识。max函数的功能是返回较大的那个数,而max(m,n)++的作用是将较大值再进行增一运算。

  • 第9题:

    下列程序的输出结果是includeint min(int a,int b){if(a

    下列程序的输出结果是 #include<iostream.h> int min(int a,int b) { if(a<b)return a; else return b; return 0; } void main() { cout<<min(1,min(2,3))<<end1; }

    A.0

    B.1

    C.2

    D.3


    正确答案:D
    解析:C++语言中,在定义该函数时所指定的数据类型决定函数的返回值类型。

  • 第10题:

    下列程序的输出结果是()。includeint b=2;int func(int *a){b+=*a;return(b);}main(){i

    下列程序的输出结果是( )。 #include <stdio.h> int b=2; int func(int *a) { b+=*a;return(b);} main() { int a=2, res=2; res+=func(&a); printf("%d\n",res); }

    A.4

    B.6

    C.8

    D.10


    正确答案:B
    解析:对于函数体中的语句b+=*a;其中的“*”是指针运算符,*a就是main函数中变量a的值。

  • 第11题:

    有以下程序 include int f(iht n) { if(n==1) return 1; else return f(n-1)+

    有以下程序 #include<iostream.h> int f(iht n) { if(n==1) return 1; else return f(n-1)+1;} void main( ) { iht i,j=0; for(i=1;i<3;i++)j+=f(i); cout < < j;} 程序运行后的输出结果是

    A.4

    B.3

    C.2

    D.1


    正确答案:B
    解析:在main函数中,对f(1)和f(2)的值进行了累加。过程如下:f(1)=1f(2)=f(1)+l=2最后,j的值为1+2=3。注意:函数的递归调用需要有一个结束的条件。

  • 第12题:

    下列程序的运行结果是______。include int Func(int *a,int n) {int s=1; for(int i=0

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

    include<iomanip.h>

    int Func(int *a,int n)

    {int s=1;

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

    s*=*a++;

    returns;}

    void main()

    {inta[]:{1,2,3,4,5,6,7,8};

    intb=Func(a,6)+Func(&a[5],2);

    cout<<“b=“<(b<<endl;}


    正确答案:b=762。
    b=762。 解析: 本题考查了。a++的用法。*a++作为表达式时,先计算*a作为表达式的值,然后使指针变量 a本身增1,在本惠中,s*=*a++等同于3=s**a,a++,S后面第一个*是乘号。

  • 第13题:

    有如下程序:includeint func(int a,int b){return(a+b):}main(){int x=2,y=5,z=8,r; r

    有如下程序: #include <stdio.h> int func(int a,int b) { return(a+b):} main() { int x=2,y=5,z=8,r; r=func(func(x,y),z); printf("%d\n",r); } 该程序的输出结果是( )。

    A.12

    B.13

    C.14

    D.15


    正确答案:D
    解析:在表达式r=func(func(x,y),z)中,func(x,y)是第一次调用函数,它的返回值7作为func函数第二次调用的实参,结果为15。

  • 第14题:

    有如下程序:includelong fib(int n){if(n>2)return(fib(n-1)+fib(n-2)); else retu

    有如下程序: #include<iostream.h> long fib(int n) { if(n>2)return(fib(n-1)+fib(n-2)); else return(2);} void main( ) {cout<<fib(3);} 该程序的输出结果是

    A.2

    B.4

    C.6

    D.8


    正确答案:B
    解析:fib(3)=fib(2)+fib(1),而fib(2)的返回值为2,fib(1)的返回值也为2,故输出的fib (3)的值为4。

  • 第15题:

    下列程序的输出结果是includeint b=2;int func(int * a){b+= * a; return(b) ;}voi

    下列程序的输出结果是 #include<iostream.h> int b=2; int func(int * a) {b+= * a; return(b) ;} void main( ) { int a=2, res=2; res+=func(&a) ; cout < < res;}

    A.4

    B.6

    C.8

    D.10


    正确答案:B
    解析:在函数体语句b+= * a;中的*是指针运算符(也称间接访问运算符) , * a就是main函数中a的值。

  • 第16题:

    有以下程序includeint f(int n){if(n==1)return 1:else return f(n-1)+1;}void mai

    有以下程序 #include<iostream.h> int f(int n) {if(n==1)return 1: else return f(n-1)+1;} void main() {int i,j=0; for(i=1;i<3;i++):j+=f(i); cout<<j;} 程序运行后的输出结果是( )。

    A.4

    B.3

    C.2

    D.1


    正确答案:B

  • 第17题:

    有如下程序includeint func(int a,int b){return(a+b);}void main(){ int x=2,y=5,

    有如下程序 #include<iostream.h> int func(int a,int b) {return(a+b);} void main() { int x=2,y=5,z=8,r; r=func (func (x,y),z); cout<<r; 该程序的输出的结果是

    A.12

    B.13

    C.14

    D.15


    正确答案:D
    解析:语句r=time(func(x,y),z);中,fun(x,y)是一次凋用函数,它的值作为func另一次调用的实参。注意本题调用两次函数。

  • 第18题:

    有以下程序()。 include int f(int n) { if(n==1)return l; else return f(n-1)+1;

    有以下程序( )。 #include<iostream.h> int f(int n) { if(n==1)return l; else return f(n-1)+1; } void main() { int i,j=-; for(i=1;i<3;i++) j+=f(i); cout<j<<endl; } 程序运行后输出结果是( )。

    A.4

    B.3

    C.2

    D.1


    正确答案:B

  • 第19题:

    下列程序的输出结果为( )。 int fun(int n){ if(n==0)return 1; else return n*fun(n-1): return 0; } void main() { eout<<func(4)<<endl;}

    A.1

    B.10

    C.24

    D.11


    正确答案:C
    解析:递归函数求阶乘,4!=24。

  • 第20题:

    下列程序的输出结果是includeint min(int a,int b){if(a

    下列程序的输出结果是 #include<iostream.h> int min(int a,int b) { if(a<b) return a; else return b; return0; } void main( ) { cout<<min (1,min (2,3))<<end1; }

    A.0

    B.1

    C.2

    D.3


    正确答案:B
    解析:本题考查的是函数的调用,第一次调用min(2,3),因为23,所以返回值为2,第二次调用min(1,2),因为12,所以返回1。

  • 第21题:

    下列程序的输出结果为includeint func(int n){ if(n<1)return1; else return n+fun

    下列程序的输出结果为 #include<iostream.h> int func(int n) { if(n<1)return1; else return n+func(n-1); return 0; } void main() { cout<<func(5)<<end1; }

    A.0

    B.10

    C.15

    D.16


    正确答案:D
    解析:本题考查的是递归函数的使用,题中递归函数的结束条件为n1,递推公式为f(n)=n+f(n-1),所以计算结果为5+4+3+2+1+1,最后一个1为n=0时的返回值。

  • 第22题:

    下列程序的输出结果是inClUdeiht b=2;int funC (int*a) { b+=*a;return(b);}void m

    下列程序的输出结果是 #inClUde<iostream.h> iht b=2; int funC (int*a) { b+=*a;return(b);} void main() { inta=2,res=2; res+=func(&a); cout<<res;}

    A.4

    B.6

    C.8

    D.10


    正确答案:B
    解析:在函数体语句中的b+=*a;的*是指针运算符(也称间接访问运算符),*a就是main函数中a的值。

  • 第23题:

    下列程序的输出结果是()。include int b=2; int func(int*a) { b+=*a;return b;} main(

    下列程序的输出结果是( )。 #include<stdio.h> int b=2; int func(int*a) { b+=*a;return b;} main() { int a=1,t=2; t+=func(&a); printf("%d\n",t); }

    A.4

    B.5

    C.6

    D.8


    正确答案:B
    解析:本题考查函数调用时的参数传递。在执行函数func时,由于全局定义了一个变量b,所以在函数体中执行时b=2+1=3,最终t=2+3=5。