niusouti.com

有以下程序#include <stdio.h>int f(int x){ int y;if(x==0||x==1) return(3);y=x*x-f(x-2);return y;}main(){ int z;z=f(3); printf("%d\n",z);}程序的运行结果是A.0B.9C.6D.8

题目

有以下程序

#include <stdio.h>

int f(int x)

{ int y;

if(x==0||x==1) return(3);

y=x*x-f(x-2);

return y;

}

main()

{ int z;

z=f(3); printf("%d\n",z);

}

程序的运行结果是

A.0

B.9

C.6

D.8


相似考题
更多“有以下程序 #include&lt;stdio.h&gt; int f(intx) {inty; if(x==0||x==1)return(3); y=x*x-f(x- ”相关问题
  • 第1题:

    有以下程序includeintf(intx){inty;if(x==0||x==1)return(3);y=x*x-f(x-2);returny;}m

    有以下程序 #include <stdio.h> intf(int x) { int y; if(x==0||x==1) return(3); y=x*x-f(x-2); return y; } main() { int z; z=f(3); printf("%d\n",z); } 程序的运行结果是

    A.0

    B.9

    C.6

    D.8


    正确答案:C
    解析: 函数int f(int x)是一个递归函数调用,当x的值等于0或1时,函数值等于3,其他情况下y=x2-f(x-2),所以在主函数中执行语句z=f(3)时,y=3*3-f(3-2)=9=f(1)=9-3=6。

  • 第2题:

    有以下程序includeint f(intx){inty; if(x==0||x==1)return(3); y=x*x-f(x-2); return

    有以下程序 #include <stdio.h> int f(int x) { int y; if(x==0||x==1) return(3); y=x*x-f(x-2); return y; } main() { int z; z=f(3); printf("%d\n",z); } 程序的运行结果是

    A.0

    B.9

    C.6

    D.8


    正确答案:C
    解析:函数int f(int x)是一个递归函数调用,当x的值等于0或1时,函数值等于3,其他情况下y=x2-f(x -2),所以在主函数中执行语句z=f(3)时,y=3*3-f(3-2)=9-f(1)=9-3=6。

  • 第3题:

    有下列程序: #include<stdi0.h> intf(intx) { inty; if(x==0‖x==1)return(3); y=x*x-f(X-2); returny; } voidmain( ) { intZ; z=f(3);printf("%d\n",z); } 程序的运行结果是( )。

    A.0

    B.9

    C.6

    D.8


    正确答案:C
    C。【解析】本题考查了函数的调用,在f函数中将实参传给X,判断if语句为假。接着执行y=3*3=f(1),再执行f(1)而f(1)满足if条件语句,所以f(1)的值为3,那么代入y=3*3-f(1)=9-3=6,故选项C正确。

  • 第4题:

    有下列程序: include int f(int x) { int y; if(x=0‖x==1)r

    有下列程序: #include <stdio.h> int f(int x) { int y; if(x=0‖x==1)return(3); y=x*x-f(x-2); return y; } main() { int z; z=f(3);printf("%d\n",z); 程序的运行结果是( )。

    A.0

    B.9

    C.6

    D.8


    正确答案:C
    解析:主函数调用f()函数,将实参3传递给x,进行if条件语句的判断不成立,接着执行y=3*3-f(1),再执行f(1)而f(1)满足if条件语句,所以f(1)的值为3,那么代入y=3*3-f(1)=9-3=6,故选项C)为正确的运行结果。

  • 第5题:

    有下列程序:

    #include<stdi0.h>

    intf(intx)

    {

    inty;

    if(x==0‖x==1)return(3);

    y=x*x-f(X-2);

    returny;

    }

    voidmain( )

    {

    intZ;

    z=f(3);printf("%d\n",z);

    }

    程序的运行结果是( )。

    A.0

    B.9

    C.6

    D.8


    正确答案:C
    C。【解析】本题考查了函数的调用,在f函数中将实参传给X,判断if语句为假。接着执行y=3*3=f(1),再执行f(1)而f(1)满足if条件语句,所以f(1)的值为3,那么代入y=3*3-f(1)=9-3=6,故选项C正确。