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); }跪求解析

答案是 编译有错

main()
{
int a=0,b=0,c=0,d=0; //定义a,b,c,d的值
if(a=1)
{b=1;
c=2;
}楼主的意思应该是如果a=1时,b=1,c=2吧?那就要加个括号,if语句后有两天及以上时都要加
else
d=3;//不满足则d=3,
printf("%d,%d,%d,%d\n",a,b,c,d); }以整数的形式打印abcd
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-01-29
你的if后else前多了一个语句,造成了编译出错
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); }
第2个回答  2011-01-29
#include<stdio.h>
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);}
改成这样可以,不知道你要干什么
相似回答