有下列程序:    #include  <stdio.h>    int f(int x)    {        int y;        if(x=0‖x==1)return(3);        y=x*x-f(x-2);        retur

admin2009-08-24  20

问题 有下列程序:    #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)为正确的运行结果。
转载请注明原文地址:https://jikaoti.com/ti/JbI0FFFM
0

最新回复(0)