第1个回答 2011-03-26
else是和第一个 if(x<y)组成一对,不是和第二个,加上括号吧
#include<stdio.h>
void main()
{int x=1,y=-1,z=2;
if(x<y)
{
if(y<0)
z=0;
}
else
z+=1;
printf("%d\n",z);
}
结果是2;
第2个回答 2011-03-26
else只和前边最近的且没有配对的if结合,这样写也许会更清楚一点
#include<stdio.h>
void main()
{
int x=1,y=-1,z=2;
if(x<y)
if(y<0) z=0;
else z+=1;
printf("%d\n",z);
}