[单选题]

(32)设有如下函数定义

int fun(int k)

{ if (k<1) return 0;

else if(k==1) return 1;

else return fun(k-1)+1;

}

若执行调用语句:n=fun(3);,则函数fun总共被调用的次数是

A.)2

B.)3

C.)4

D.)5

参考答案与解析:

相关试题

设有如下函数定义int fun(int k){if(k<1) return 0:

[单选题]设有如下函数定义int fun(int k){if(k<1) return 0:else if(k==1) return 1:else return fun(k一1)+1:}若执行调用语句:n=fun(3);,则函数fun总共被调用的次数是A.2B.3C.4D.5

  • 查看答案
  • 有如下程序段void fun(int *a, int *b){ int *k;

    [单选题]有如下程序段void fun(int *a, int *b){ int *k; k=a; a=b; b=k;}main(){ int a=3, b=6, *x=&a, *y=&b; fun(x,y); printf("%d %d", a, b);} 程序运行后输出的结果是A.6 3 B.3 6 C.编译出错 D.0 0

  • 查看答案
  • 已知下列函数定义:fun(int*b,int c,intD){int k;for

    [单选题]已知下列函数定义: fun(int*b,int c,intD){int k; for(k=0;k<c*d;k++) {*b=c+d; b++;} } 则调用此函数的正确写法是(假设变量a的说明为int a[10])( )。A.fun(*a,6,14);B.fim(&a,6,8);C.fun(a,8,4);D.fun((int)a,8,6);

  • 查看答案
  • 若有如下程序:main(){int k,x=0,y=0;for(k=0;k<=2

    [单选题]若有如下程序: main() { int k,x=0,y=0; for(k=0;k<=2;k++) switch(k) { case 0: X++; case 1: y++; case 2: X++;y++; } printf("%d,"d/n",x,y); } 则程序运行后的输出结果是( )。A.3,3B.2,2C.4,5D.2,3

  • 查看答案
  • 已知递归函数fun的定义如下:int fun(int n){if(n<=1)re

    [单选题]已知递归函数fun的定义如下: int fun(int n) { if(n<=1)return1;//递归结束情况 else return n*fun(n-2);//递归 } 则函数调用语句fun(5)的返回值是( )。A.5B.12C.15D.30

  • 查看答案
  • 已知递归函数fun的定义如下:int fun(int n){if(n<=1)re

    [单选题]已知递归函数fun的定义如下: int fun(int n) { if(n<=1)return 1;//递归结束情况 else return n*fun(n-2);//递归 } 则函数调用语句fun(5)的返回值是( )。A.5B.12C.15D.30

  • 查看答案
  • 设有如下的变量定义;int i=8,k,a,b;unsinged long w=

    [单选题]设有如下的变量定义; int i=8,k,a,b; unsinged long w=5; double x=1.42,y=5.2 则以下符合C语言语法的表达式是( )A.a+=a-=(b=4)*(a=3)B.x%(-3);C.a=a*3=2D.y=float(i)

  • 查看答案
  • 已知递归函数f的定义如下: int f(int n){ if(n<= 1)ret

    [主观题]已知递归函数f的定义如下:int f(int n){if(n<= 1)return 1;//递归结束情况f5=5*f3=5*3*f1else return n*f(n-2); //递归}则函数调用语句f(5)的返回值是______。

  • 查看答案
  • 现有定义int k=1;则执行语句while(£«£«k<4);后,k的值为(

    [单选题]现有定义int k=1;则执行语句while(++k<4);后,k的值为( )

  • 查看答案
  • 设有如下程序#include <stdio.h>main(){ int **k,

    [单选题]设有如下程序#include <stdio.h>main(){ int **k, *j,i=100; j=&i;k=&j; printf("%d/n",**k);}上述程序的输出结果是A.运行错误 B.100 C.i的地址 D.j的地址

  • 查看答案
  • (32)设有如下函数定义int fun(int k){ if (k<1) ret