问题 单项选择题

有以下程序:
#include<stdio.h>
int f(int x)
inc 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。

填空题
单项选择题 案例分析题