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

admin2010-09-05  18

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

最新回复(0)