参考答案和解析
正确答案:B
更多“有程序:F(X,Y)=X/Y+XY=-2.0X=4.0X=1.0*F(Y,X)WRITE(*,*)XEND此程序的运行结果是:()A、2.5B、-2.5C、2D、-2”相关问题
  • 第1题:

    ●分别运行下列两段程序后,y1和y2的值是(39)。

    程序段1:

    #define f(x) x*x

    floatX,y1;

    X=2.0;

    Y1=x/f(x);

    程序段2:

    #define f(x) (x*x)

    floatx,y2;

    X=2.0;

    y2=x/f(x);,

    ( 39)A.y1=2.0,y2=0.5

    B.y1=0.5,y2=2.0

    C. y1=2.0,y2=1.0

    D. y1=1.0,y2=2.0


    正确答案:A

  • 第2题:

    有如下程序:includemain(){float x=2.0,y; if(x<0.0)y=0.0; else if(x>10.0)y=1.0/x;

    有如下程序: #include <stdio.h> main() { float x=2.0,y; if(x<0.0) y=0.0; else if(x>10.0) y=1.0/x; else y=1.0; printf("%f/n",y); } 该程序的输出结果是( )。

    A.0

    B.0.25

    C.0.5

    D.1


    正确答案:D
    解析:本题中,x=2.0,因此执行elsey=1.0,并且以“%f”输出。

  • 第3题:

    有以下程序 include define F(X,Y) (X)*(Y) main( ) { int a=3, b=4; prin

    有以下程序

    #include <stdio.h>

    #define F(X,Y) (X)*(Y)

    main( )

    { int a=3, b=4;

    printf("%d\n", F(a++, b++));

    }

    程序运行后的输出结果是

    A.12

    B.15

    C.16

    D.20


    正确答案:A
    解析:本题考查了带参数的宏定义。参数只是进行简单的替换而不是把其值求出后替换形式参数。本题中用a++替换X,用b++替换Y,再求(a++)*(b++)的值。

  • 第4题:

    有以下程序includeintf(intx){inty;if(x==0||x==1)return(3);y=x*x-f(x-2);returny;}m

    有以下程序 #include <stdio.h> intf(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。

  • 第5题:

    有下列程序: include int f(int x) { int y; if(x=0‖x==1)r

    有下列程序: #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
    解析:主函数调用f()函数,将实参3传递给x,进行if条件语句的判断不成立,接着执行y=3*3-f(1),再执行f(1)而f(1)满足if条件语句,所以f(1)的值为3,那么代入y=3*3-f(1)=9-3=6,故选项C)为正确的运行结果。

  • 第6题:

    有以下程序includeint f(intx){inty; if(x==0||x==1)return(3); y=x*x-f(x-2); return

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

  • 第7题:

    有如下程序:includemain(){float x=2.0,y; if(x<0.0)y=0.0; else if(x<10.0)y=1.0/x;

    有如下程序: #include<stdio.h> main() { float x=2.0,y; if(x<0.0) y=0.0; else if(x<10.0)y=1.0/x; else y=1.0; printf("%f\n",y); } 该程序的输出结果是( )。

    A.0

    B.0.25

    C.0.5

    D.1


    正确答案:C
    解析:该题目考查对if-elseif结构的理解。由于x的值满足x10.0的关系,所以程序执行y=1.0/x;语句,y的值等于0.5。用printf函数按%f格式输出时,结果为小数点后保留6位。

  • 第8题:

    有以下程序:

    void f( int y,int *x)

    { y=y+*x; *x=*x+y; }

    main()

    {int x=2,y=4;

    f(y,&x);

    ptintf("%d %d\n",x,y);

    }

    执行后输出结果是【 】。


    正确答案:84
    84 解析:“值传递”指实参将值传递给形参后,实参与形参再无联系。也就是说对行参的改变将不影响实参;地址传递是指地址或数组名作为形参时的参数传递,这种情况下对形参的改变将对实参产生影响。函数f(y,*x)的作用是让y的值加上指针x所指向变量的值,让指针x所指向变量的值加上y的值。由于形参y是传值的,形参x是传地址的,故调用该函数后,作为实参y的值将不改变,而实参x的值将改变,故最后输出的y值为4,而x的值为8。

  • 第9题:

    有程序:INTEGERFF(X,Y)=X+YA=-2.0B=4.0B=1.0+F(A,B)WRITE(*,‘(1X,F3.1)’)BEND此程序的运行结果是:()

    • A、***
    • B、-1.5
    • C、-1.0
    • D、3.0

    正确答案:D

  • 第10题:

    单选题
    有程序:INTEGERFF(X,Y)=X+YA=-2.0B=4.0B=1.0+F(A,B)WRITE(*,‘(1X,F3.1)’)BEND此程序的运行结果是:()
    A

    ***

    B

    -1.5

    C

    -1.0

    D

    3.0


    正确答案: B
    解析: 程序运行时,将A=-2.0,B=4.0代入到函数表达式中计算,返回值为2.0;而后与1.0相加,为3.0。

  • 第11题:

    单选题
    有程序:F(X,Y)=X/Y+XY=-2.0X=4.0X=1.0*F(Y,X)WRITE(*,*)XEND此程序的运行结果是:()
    A

    2.5

    B

    -2.5

    C

    2

    D

    -2


    正确答案: A
    解析: 程序运行时由于是用F(Y,X)调用,则F(X,Y)=-2.0/4.0-2.5=-2.5,X=1.0*(-2.5)=-2.5。

  • 第12题:

    单选题
    有程序:INTEGERFF(X,Y)=X/Y+XA=-2.0B=4.0B=B+F(A,B)WRITE(*,20)B20FORMAT(1X,F4.1)END此程序的运行结果是:()
    A

    1.0

    B

    1.5

    C

    2.0

    D

    3.0


    正确答案: B
    解析: 因为函数F返回的值为整型数,返回值为-2.0,经过B=B+F(A,B)运行后得到2.0。

  • 第13题:

    有如下程序 main() { float x=2.0,y; if(x<0.0)y=0.0; else if(x<10.0)y=1.0/x; else y=1.0; printf("%f\n",y);} 该程序的输出结果是

    A.0

    B.0.25

    C.0.5

    D.1


    正确答案:C
    解析:该题目测验考生对if…elseif结构的理解,比较简单。x的值满足x10.0的关系,所以程序将执行y=1.0/x;语句,y的值应该等于0.5。最后,用printf函数输出时,%f的输出格式为小数点后保留6位。

  • 第14题:

    有如下程序main(){float x=2.0,y;if(x<0.0)y=0.0;else if(x>10.0)y=1.0/x;else y=1.0;printf("%f

    有如下程序 main() {float x=2.0,y; if(x<0.0)y=0.0; else if(x>10.0)y=1.0/x; else y=1.0; printf("%f\n",y);} 该程序的输出结果是

    A.0.000000

    B.0.250000

    C.0.500000

    D.1.000000


    正确答案:D

  • 第15题:

    有以下程序#include <stdio.h>main{ int x,y; scanf("%2d%ld",&x,&y); printf("%d\n",x+y);}程序运行时输入:1234567,程序的运行结果是


    正确答案:15
    本题主要考查我们对输入/输出语句的掌握情况。程序中首先定义了两个整型变量,然后分别给其输入值,给x输入的输入格式是“%2d”,这表示取输入的两位,给变量y输入的输入格式是“%1d”,表示输入1位。最后程序输出的是变量x和y的和。从程序运行时输入1234567我们可以知道,x只取前两位,那么其值为12,而y只取1位,其值为3,因此,最后的输出结果为15。

  • 第16题:

    有以下程序ineludemain(){ float x,y;scan{("%f",&x);if(x<0.0)y=0.0;else if((x<

    有以下程序 #inelude<stdio.h> main() { float x,y; scan{("%f",&x); if(x<0.0)y=0.0; else if((x<5.0)&&(x!=2.0)) y=1.0/(x+2.0); else if(x<10.0)y=1.0/x; else y=10.0; printf("%f\n",y); } 若运行时从键盘上输入2.0<CR>(<CR>表示回车),则上面程序的输出结果是( )

    A.0

    B.0.25

    C.0.5

    D.1


    正确答案:C

  • 第17题:

    有以下程序

    include<stdio.h>

    main( )

    {int x,y;

    scanf(”%2d%1d”,&x,&y);printf(”%d\n”,x+y);

    }

    程序运行时输入:1234567,程序的运行结果是______。


    正确答案:15
    15 解析:本题主要考查scanf函数的格式输出。其中%2d代表输入的两个字符作为一个数,%ld代表输入的一个字符作为一个数,所以结果为x+y=12+3=15。

  • 第18题:

    有如下程序 main() { float x=2.0,y; if(x<0.0)y=0.0; else if(x<10.0)y=1.0/x; else y=1.0; printf("%f\n",y); } 该程序输出结果是______。

    A.0

    B.0.25

    C.0.5

    D.1


    正确答案:C
    解析:本题考查的是if...else语句的使用。x=2.0,符合第二个IF语句的条件x10.0,所以执行y=1.0/x语句,即y=1.0/2.0=0.500000。

  • 第19题:

    有如下程序 main() { float x=2.0,y; if(x<0.0)y=0.0; else if(x<10.0)y=1.0/x; elsey=1.0; printf("%f\n",y); } 该程序输出结果是______。

    A.0

    B.0.25

    C.0.5

    D.1


    正确答案:C
    解析:本题考查的是if…else语句的使用。x=2.0,符合第二个IF语句的条件x10.0,所以执行y=1.0/x语句,即y=1.0/2.0=0.500000。

  • 第20题:

    有程序:INTEGERFF(X,Y)=X/Y+XA=-2.0B=4.0B=B+F(A,B)WRITE(*,20)B20FORMAT(1X,F4.1)END此程序的运行结果是:()

    • A、1.0
    • B、1.5
    • C、2.0
    • D、3.0

    正确答案:C

  • 第21题:

    有程序:F1(x)=2.0/(1.0+x)F2(Y)=F1(Y)*Y+1.0A=F1(1.0+F2(1.0)WRITE(*,10)A10FORMAT(1x,E8.2)END此程序执行后的输出结果为:()

    • A、3.00
    • B、3.0
    • C、3.00E+00
    • D、30E+01

    正确答案:D

  • 第22题:

    单选题
    阅读下列程序 K(X,Y)=X/Y+X   A=-2.0   B=4.0   B=1.0+K(A,B)   WRITE(*,10)B   10 FORMAT(1X,F4.1)  END  程序运行结果是()
    A

    -1.0

    B

    1.0

    C

    2.0

    D

    3.0


    正确答案: A
    解析: 暂无解析

  • 第23题:

    单选题
    阅读下列程序  INTEGER F F(X,Y)=X+Y  A=-2.5  B=2.1  B=B+F(A,B)  WRITE(*,’(F3.1)’)B  END  程序运行的结果是()
    A

     1

    B

     7

    C

     2.1

    D

     1.7


    正确答案: D
    解析: 暂无解析