if(a==t && b+c >a)  else flag=false;

这个语句乍一看没什么问题,如果a==t 成立b+c >a不成立-〉flag=false;

但是编译时出现了问题 illegal else without matching if -> else无对应的if

为什么呢?

if()后应该接一段语句,如果没有大括号,默认大括号里面只有一句,

if(a==t && b+c >a)  else flag=false;这里系统默认if(a==t && b+c >a) { else flag=false;}是这样的,系统自己会给你加大括号,此时的else无对应的if。

改成这样就ok啦

if(a==t && b+c >a) {} else flag=false;

posted on 2016-05-02 21:34  猫咪大人  阅读(326)  评论(0编辑  收藏  举报