C语言中‖和&&用法

#include "stdio.h"
void main()
{
int a = 1,b = 2,c = 3,d = 4;

if((a=2)||(b=1))
{
c= 2;
}

if((c==3)&&(d=-1))
{
a= 5;
}
printf("%d,%d,%d,%d\n",a,b,c,d);
想这样一道题,第一个if中a=2与int中 a=1有什么联系吗?麻烦写一下运算过程,谢谢啦。

没关系的
地一个 int a=1;相当与定义变量并且初始化
if((a=1)||(b=1)) 的意思是:
首先把 a的值变成 1
然后(a=1)这个算式返回 1 给 if追问

所以C就等于2在第二个if中因为C等于2所以错误,d不等于5还是等于4,对吧

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-01-19
你这个题明显有问题,if里面应该是判读用“==”,你赋值用“=“”
相似回答