有以下程序 #include void fun(char C) {if(c>‘x’)fun(c-1); printf(“%c”,c); } main() {fun(‘z’);} 程序运行后的

admin2012-05-23  26

问题 有以下程序
    #include
    void fun(char C)
    {if(c>‘x’)fun(c-1);
    printf(“%c”,c);
    }
    main()
    {fun(‘z’);}
    程序运行后的输出结果是

选项 A、wxyz
B、xyz
C、ZyNW
D、zyx

答案B

解析 本题考查的是函数的递归调用。函数的调用过程如图1所示。
   
    从图1可以看到,fum函数共被调用3次,即fun(‘z’)?fun(‘y’)?fun(‘x’)。main函数调用fun(‘z’),fun函数调用fun(‘y’)和fun(‘x’),每次调用又进一步进行递归调用fun函数,到fun(‘x’)时输出x,然后递推输出y的值,输出z的值。
转载请注明原文地址:https://kaotiyun.com/show/INPp777K
0

最新回复(0)