C语言 if 表达式,可以复杂的带有&&和||的吗?
发布网友
发布时间:2022-06-05 06:22
我来回答
共2个回答
热心网友
时间:2023-11-09 10:21
if(a=2)
{
b=2;
c=4;
}
else
d=3;
这个语句没有语法错误(可能会有警告),是可以执行的。
但是这个语句永远没有机会执行else部分。
a=2赋值表达式的计算结果就是2,当这个表达式出现在if语句逻辑表达式位置上的时候,它的计算结果是被当作逻辑值处理的,在c语言中用整型数表示逻辑量,非零表示“真”,所以这是一个永真式;这个if的逻辑条件永远不会为假。
也就是说,这里所表达的逻辑条件并不是“a的内容是否等于2”,而是向变量a中送入数据2。
热心网友
时间:2023-11-09 10:21
程序没错~
因为~
循环条件是i<=k,
然后你if里面又需要i>k成立。。。
有冲突!