在c语言程序中if-else语句的else语句总是不执行是怎么回事
5个回答
推荐于2017-09-18
展开全部
1.如果if条件成立,当然不会执行else子句。而会执行if子句
2.如果误将if条件中的相等操作符==误写成了赋值号=,而且=后面的值不是0,那么这个条件将一直成立,所以不会执行else子句
3.如果else后面有多条执行语句,而又没有加上括号,那么当if条件不成立时只会执行else后面的第一条语句,其它的语句不在else范围内,不管条件是否成立,它们都会执行。
4.如果根本没有else子句,那么...
2.如果误将if条件中的相等操作符==误写成了赋值号=,而且=后面的值不是0,那么这个条件将一直成立,所以不会执行else子句
3.如果else后面有多条执行语句,而又没有加上括号,那么当if条件不成立时只会执行else后面的第一条语句,其它的语句不在else范围内,不管条件是否成立,它们都会执行。
4.如果根本没有else子句,那么...
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
if 的条件有问题,条件总是真的,则总是执行if而不执行else
例如:if (a=1) 你本来可能像写a==1 ,结果少个等号,出错,此条件永远为真,else永不执行
例如:if (a=1) 你本来可能像写a==1 ,结果少个等号,出错,此条件永远为真,else永不执行
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不执行的原因可能是if的判断总为true,看看你是不是把表示相等关系的‘==’写成了赋值运算符‘=’
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我觉得如果像楼上两位说的那样,在程序编译时会给出警告的.你的IF表达式下的所有语句应用{}起来,然后,把IF()中写一个"0"即
if(0)
{}
else
{}
这时else后的指定执行.那么你在看一下你的if()中的表达式那有问题.
if(0)
{}
else
{}
这时else后的指定执行.那么你在看一下你的if()中的表达式那有问题.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询