更多“下面的程序的运行结果是__________func main() {x := 1{ x := 2 fmt.Print(x)}fmt.Println(x)} ”相关问题
  • 第1题:

    有以下程序

    main( )

    { int m=3,n=4,x;

    x=-m++;

    x=x+8/++n;

    printf("%d\n",x);

    }

    程序运行后的输出结果是

    A.3

    B.5

    C.-1

    D.-2


    正确答案:D
    解析:本题涉及运算符的优先级,见程序中,第一行为数据定义及初始化,第二行“++”的优先级高于“—”所以,运行第二行后x的值为—4,第三行中“/”的优先级高于“++”,所以,先进行除法运算,再对n进行“++”运算,得出结果应为-4+8/4 = -2。

  • 第2题:

    以下程序运行后的输出结果是 [ ]。

    main()

    {int x, a=1,b=2,c=3,d=4;

    x=(a<b)?a:b; x=(x<c)?x:c; x=(d>x)?x:d;

    printf("%d\n",x);

    }


    正确答案:√
    1 解析:条件运算符优先于赋值运算,但低于逻辑运算、关系运算、算术运算。条件运算的一般形式为(表达式1)?(表达式2):(表达式3),当(表达式1)值为真时,(表达式2)的值为整个表达式的值;当(表达式1)的值为假时,(表达式3)的值为整个表达式的值。题中执行表达式“x=(ab)?a:b”后,x=1;再执行表达式“x=(xc)?x:c”后,x=1,将此值代入后—个表达式“x=(d>x)?x:d”,由于“d>x”值为真,故x的值为1。

  • 第3题:

    有以下程序 main() { int m=3,n=4,x; x=-m++; x=x+8/++n; printf("%d\n",x); } 程序运行后的输出结果是______。

    A.3

    B.5

    C.-1

    D.-2


    正确答案:C

  • 第4题:

    下列程序的运行结果是______。includelong func(int x){ long p;if(x==O‖x==1)return(1)

    下列程序的运行结果是______。

    include<stdio.h>

    long func(int x)

    { long p;

    if(x==O‖x==1)

    return(1);

    p=x*func(x-1);

    return(p);

    }

    main()

    { printf("%d\n",func(4));

    }


    正确答案:

    本题考查函数的循环调用。p=x*func(x-1),当x=4时,不满足if语句的条件,p=4*func(3), x=3也不满足条件,则func(3)=3*func(2),func(2)=2*func(1),x=1满足条件return(1),则输出结果为 4*3*2*1=24。

  • 第5题:

    有以下程序: main() { int m=3,n=4,x; x;-m++; x=x+8/++n; printf("%d\n",x); } 程序运行后的输出结果是( )。

    A.3

    B.5

    C.-1

    D.-2


    正确答案:D
    解析:主函数中首先定义了整型变量m、n和x,并给m和n赋初值为3和4,接着执行两条赋值语句,第一条x=-m++等价于x=-m,m++,运行后x的值为-3,第二条x=x+8/++n等价于++n,x=x+8/n,即x=-3+8/5=-2,因此最后输出x的值为-2。所以,4个选项中选项D符合题意。