有以下程序: #include<stdio.h> main() {int x=1,y=0; if(!x)y++; else if(x==0) if(x)y+=2; else y+=3; printf("%d\n",y); } 程序运行后的输出结果是( )

admin2020-10-26  30

问题 有以下程序:
#include<stdio.h>
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、1
B、2
C、0
D、3

答案C

解析 因为x=1,!x为0,x==0为false,所以if和else if的判断条件都不满足,程序运行时只执行x,y的初始化语句和printf()函数,打印出y的值为0,故答案为C。
转载请注明原文地址:https://kaotiyun.com/show/2D3p777K
0

最新回复(0)