为什么这道c语言题输出结果是2 而不是 0??

为什么这道c语言题输出结果是2 而不是 0??main()

{ int a=2,b=-1,c=2;

if(a<b)

if(b<0) c=0;

else c+=1;

printf("%d\n”,c);

}

程序逻辑实质上等价于:

main()

{ int a=2,b=-1,c=2;

if(a<b)
{
if(b<0)
{
c=0;
}
else
{
c+=1;
}
}

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

}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-12-28
else和最近的if匹配,,if(a<b)不成立,,直接打印c的值
相似回答