问题 单项选择题

有以下程序:
#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。

单项选择题
单项选择题