为什么编译错了? 关于if语句
#include <stdio.h>void main(){ int a=0,b=0,c=0,d=0; if(a=1) b=1;c=2; else d=3; printf("%d,%d,%d,%d\n",a,b,c,d);}#include <stdio.h>void main(){ int a=0,b=0,c=0,d=0; if(a=1) {b=1;c=2;} else d=3; printf("%d,%d,%d,%d\n",a,b,c,d);}
[解决办法]
#include <stdio.h>void main(){ int a=0,b=0,c=0,d=0; if(a==1) //此处应该是a==1 {b=1; c=2; } else d=3; printf("%d,%d,%d,%d\n",a,b,c,d);}
[解决办法]
a=1是赋值语句
[解决办法]
if(a=1)这句话为真,d永远为0