下列程序的输出结果是( )。#include<stdio.h>int fun(int x){ int p; if(x==0||x==1) return 3; else p=x-fun(x-2); re

admin2010-05-22  21

问题 下列程序的输出结果是(    )。#include<stdio.h>int fun(int x){   int p;    if(x==0||x==1)        return 3;    else        p=x-fun(x-2);    return p;}void main(){   printf("\n%d",fun(5));}

选项 A、5
B、3
C、7
D、1

答案1

解析 本题考查函数的递归调用。在函数递归调用时,fun(5):a=5-fun(3)->fun3:a=3-fun(1)->fun(1):a=3,反推回去 fun(3):a=3-3=0->fun(5):a=5-0=5,晕后的计算结果为5。
转载请注明原文地址:https://kaotiyun.com/show/iNWp777K
0

最新回复(0)