有以下程序: #include main() { int x=1,y=0; if(!x)y++; else if(x==0) if(x)y+=2; else y+=3; printf(“

admin2020-07-28  55

问题 有以下程序:
    #include
    main()
    {    int x=1,y=0;
    if(!x)y++;
    else if(x==0)
    if(x)y+=2;
    else y+=3;
    printf(“%d\n”,Y);
    }
    程序运行后的输出结果是(    )。

选项 A、3
B、2
C、1
D、0

答案D

解析 在jf else语句中,else总是与离它最近的if配对。本题中x为1,所以!x为0,所以执行else if语句中的内容,判断(x==0)是否成立,因为x为1,所以条件不成立,所以else if内部的if…else语句不再执行,y的值还是初始值0。
转载请注明原文地址:https://kaotiyun.com/show/Rn3p777K
0

相关试题推荐
最新回复(0)