有以下程序 #include<iostream.h> int f(iht n) { if(n==1) return 1; else return f(n-1)+

题目
有以下程序 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

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

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


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

第2题:

有以下程序 int f(int n) { if(n==1)return 1; else return f(n-1)+1;} main() { int i,j=0; for(i=1;i<3;i++)j+=f(i); printf("%d\n",j);} 程序运行后的输出结果是

A.4

B.3

C.2

D.1


正确答案:B
解析:在main函数中,对f(1)和f(2)的值进行了累加。f(1)=1f(2)=f(1)+1=2最后,j的值为1+2=3

第3题:

( 33 )有以下程序

#include <studio.h>

int f ( int t[],int n ) ;

main

{ int a[4]={1,2,3,4},s;

s=f ( a,4 ) ; printf ( " %d\n " ,s ) ;

}

int f ( int t[],int n )

{ if ( n>0 ) return t[n-1]+f ( t,n-1 ) ;

else return 0 ;

}

程序运行后的输出结果是

A ) 4

B ) 10

C ) 14

D ) 6


正确答案:B

第4题:

有以下程序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

第5题:

有以下程序:includeintf(intn)} if(n==1)return 1;else return f(n-1)+1;}main(){int

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

A.4

B.3

C.2

D.1


正确答案:B
解析:在main函数中,j的值是f(1)和f(2)的值相加的结果。f(1)=1,f(2)=f(1)+1=2,j的值为1+2=3。

第6题:

下列程序的输出结果为 include int func(int n) {if(n<1) return 1; else retur n

下列程序的输出结果为

#include<iostream.h>

int func(int n)

{

if(n<1) return 1;

else retur n+func(n-1) ;

return 0;

}

void main( )

{

cout < < func(5) < < endl;

}

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时的返回值。

第7题:

有如下程序: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。

第8题:

阅读下面程序:include long fib(int n){if (n>2)return (fib(n-1) + fib(n-2));else

阅读下面程序:

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)<<end1;

}

则该程序的输出结果应该是【 】。


正确答案:4
4

第9题:

有以下程序()。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

第10题:

有以下程序int f(int n){ if(n==1)return 1; else return f(n-1)+1;}main(){ int i,j=0; for(i=1;i<3;i++)j+=f(i); printf("%d\n",j); }程序的运行结果是A.4 B.3C.2 D.1


正确答案:B
题目给出的程序包括两个部分:main函数和f函数。main函数的运行最后将变量j的值输出,j的值为f(1)+f(2)。f函数只有一个实参n,当n等于1时,f(1)的值为1,当n大于1时,f的值为f(n-1)+1;若n=2,则f的值为f(1)+1=2,j的值为1+2=3。

更多相关问题