更多“有以下程序#include <stdio.h>void fun( char. c){ if(c>'x') fun( c-1); printf("%c", ”相关问题
  • 第1题:

    下面程序的运行结果是( )。include main(){int a=25; fun(&A); }fun(int *x){ print

    下面程序的运行结果是( )。

    include<stdio.h>

    main()

    {int a=25;

    fun(&A);

    }

    fun(int *x)

    { printf("%d\n",++*x);

    }


    正确答案:26
    26 解析:在主函数中只调用了fun函数,调用时把变量a的地址传递给形参。fun函数的形参x是一个指针,其基类型与主函数中a的类型一致,因此在调用时得到的是a的地址,输出项是++*x,*x代表的就是主函数中变量a的存储单元,++*x就是使主函数中a的值加1,输出26。

  • 第2题:

    有以下程序:include char fun(char x,char y){if(x

    有以下程序: #include <stdio.h> char fun(char x,char y) { if(x<y) return x; return y; } main() { int a='9',b='8',c='7'; printf("%c\n",fun(fun(a,b),fun(b,c))); } 程序的执行结果是( )。

    A.函数调用出错

    B.8

    C.9

    D.7


    正确答案:D
    解析:函数fun的作用是返回较小的字符。在main函数中,fun(a,b)及fun(b,c)的值作为fun函数新的参数,返回a,b,c的较小值,结果为7。

  • 第3题:

    有以下程序:includefun(int x,int y,int z){z=x*y;}main(){int a=4,b=2,c=6; fun(a,b,

    有以下程序: #include <stdio.h> fun(int x,int y,int z) { z=x*y;} main() { int a=4,b=2,c=6; fun(a,b,c); printf("%d",c); } 程序运行后的输出结果是( )。

    A.16

    B.6

    C.8

    D.12


    正确答案:B
    解析:本题考查函数形参与实参的传递规则,当形参与实参都是简单的数据类型时,形参值的改变不能影响实参值,即本题中c的值未改变,仍然是6。

  • 第4题:

    下列程序的输出结果是【】。 include void fun(int x) { if(x/2>0) fun(x/2); printf("%d"

    下列程序的输出结果是【 】。

    include <stdio.h>

    void fun(int x)

    {

    if(x/2>0) fun(x/2);

    printf("%d",x);

    }

    main()

    {

    fun(3);printf("\n");

    }


    正确答案:13
    13 解析:此题考查的是函数的递归调用,进入主函数调用fun()函数,进行if语句的判断,当x=3时,条件成立,执行fun(x/2);语句,递归调用fun()函数本身,进行if语句条件判断,if(x/2>0)条件不成立,用printf输出1;返回上一次调用fun()函数,printf输出3,因此程序的最终输出结果为:13。

  • 第5题:

    有以下程序:include<stdio.b>void fun(char c){ if(c>X)fun(c-1): printf("%C&q

    有以下程序:

    include<stdio.b>

    void fun(char c)

    { if(c>X)fun(c-1):

    printf("%C",c);

    }

    traia( )

    { fun(z);}

    程序运行后的输出结果是( )

    A.xyz

    B.wxyz

    C.xzy

    D.zvx


    正确答案:A

    本题考查简单的递归函数,当c>X则会产生递归,依次类推,答案选择A.