有以下程序 #include <stdio.h> intf(int x) { int y; if(x==0||x==1) return(3); y=x*x-f(x-2); return y; }

admin2013-02-23  34

问题 有以下程序    #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。
转载请注明原文地址:https://kaotiyun.com/show/gZPp777K
0

最新回复(0)