永发信息网

我的程序哪出错了?C语言的

答案:4  悬赏:70  手机版
解决时间 2021-06-01 13:22
  • 提问者网友:wodetian
  • 2021-06-01 07:16

#include <stdio.h>
int main()
{
int A,B,C,D,E,F;
printf("the crimers are ");
for(A=0;A<=1;++A)
{
for(B=0;B<=1;++C)
{
for(C=0;C<=1;++C)
{
for(D=0;D<=1;++D)
{
for(E=0;E<=1;++E)
{
for(F=0;F<=1;++F)
{
if((A==0&&B==1)||(A==1&&B==1)||(A==1&&B==0))&&((A==1&&E==1&&F==1)||(A==1&&E==1&&F==0)||(A==1&&E==0&&F==1)||(A==0&&E==1&&F==1))&&((A==0&&D==1)||(A==1&&D==0)||(A==0&&D==0))&&((B==1&&C==1)||(B==0&&C==0))&&((C==1&&D==0)||(C==0&&D==1))&&((D==0&&E==0)||(D==1&&E==1)||(D==1&&E==0))
{
if(A==1)
printf("A ");
if(B==1)
printf("B ");
if(C==1)
printf("C ");
if(D==1)
printf("D ");
if(E==1)
printf("F ");
if(F==1)
printf("F ");
}
}
}
}
}
}
}
return 0;
}

错误提示是:error C2143: syntax error : missing ';' before '&&'

error C2059: syntax error : 'return'

error C2059: syntax error : '}'

最佳答案
  • 五星知识达人网友:我住北渡口
  • 2021-06-01 08:25

if(条件) 你的程序中缺少了外层的括号(); 修改如下:


if(((A==0&&B==1)||(A==1&&B==1)||(A==1&&B==0))&&
((A==1&&E==1&&F==1)||(A==1&&E==1&&F==0)||
(A==1&&E==0&&F==1)||(A==0&&E==1&&F==1))&&
((A==0&&D==1)||(A==1&&D==0)||(A==0&&D==0))&&
((B==1&&C==1)||(B==0&&C==0))&&((C==1&&D==0)||
(C==0&&D==1))&&((D==0&&E==0)||(D==1&&E==1)||(D==1&&E==0)))



另外就是楼上所说的. for(B=0;B<=1;++C) 改成 for(B=0;B<=1;++B)



测试结果如下:


全部回答
  • 1楼网友:青尢
  • 2021-06-01 11:51

(A==0&&B==1)||(A==1&&B==1)||(A==1&&B==0)->!(A==1&&B==0)

(A==1&&E==1&&F==1)||(A==1&&E==1&&F==0)||(A==1&&E==0&&F==1)||(A==0&&E==1&&F==1)->!(A==0&&E==0)

(A==0&&D==1)||(A==1&&D==0)||(A==0&&D==0)->!(A==1&&D==1)

(B==1&&C==1)||(B==0&&C==0)->B==C

(C==1&&D==0)||(C==0&&D==1)->C!=D

(D==0&&E==0)||(D==1&&E==1)||(D==1&&E==0)->!(D==0&&E==1)

结果:(!(A==1&&B==0))&&(!(A==0&&E==0))&&(!(A==1&&D==1))&&(B==C)&&(C!=D)&&(!(D==0&&E==1)

#include <stdio.h> int main() { int A,B,C,D,E,F; printf("the crimers are "); for(A=0;A<=1;++A) { { for(B=0;B<=1;++B) { for(C=0;C<=1;++C) { for(D=0;D<=1;++D) { for(E=0;E<=1;++E) { for(F=0;F<=1;++F) { if((!(A==1&&B==0))&&(!(A==0&&E==0))&&(!(A==1&&D==1))&&(B==C)&&(C!=D)&&(!(D==0&&E==1))) { if(A==1) printf("A "); if(B==1) printf("B "); if(C==1) printf("C "); if(D==1) printf("D "); if(E==1) printf("F "); if(F==1) printf("F "); } } } } } } } return 0; } }

  • 2楼网友:千杯敬自由
  • 2021-06-01 10:48

这个地方错了

if((A==0&&B==1)||(A==1&&B==1)||(A==1&&B==0))&&((A==1&&E==1&&F==1)||(A==1&&E==1&&F==0)||(A==1&&E==0&&F==1)||(A==0&&E==1&&F==1))&&((A==0&&D==1)||(A==1&&D==0)||(A==0&&D==0))&&((B==1&&C==1)||(B==0&&C==0))&&((C==1&&D==0)||(C==0&&D==1))&&((D==0&&E==0)||(D==1&&E==1)||(D==1&&E==0))

  • 3楼网友:鱼芗
  • 2021-06-01 10:00
for(B=0;B<=1;++C) 这一句明显错了,你的程序将会是一个死循环。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯