求教,一起来探讨一下

来源:互联网 发布:sql forceseek 编辑:程序博客网 时间:2024/05/16 14:25
5位运动员参加了10米台跳水比赛,有人让他们预测比赛结果
A选手说:B第一,我第三。
B选手说:我第二,E第四。
C选手说:我第一,D第二。
D选手说:C最后,我第三。
E选手说:我第四,A第一。
比赛结束后,每位选手都说对了一半,请编程确定比赛的名次。
#include <stdio.h> int main(){int a = 0;int b = 0;int c = 0;int d = 0;int e = 0;for(a=1 ;a<=5 ; a ++)for(b=1 ;b<=5 ; b ++)for(c=1 ;c<=5 ; c ++)for(d=1 ;d<=5 ; d ++)for(e=1 ;e<=5 ; e ++){if((a==1 || e==4)&&(b==1 || a==3)&&(b==2 || e==4) &&(c==1 || d==2)&&(c==5||d==3)){if(a!=b && a!=c && a!=d && a!=e)if(b!=c && b!=d && b!=e)if(c!=d && c!=e)if(d!=e)printf("a=%d b=%d c=%d d=%d e=%d \n",a,b,c,d,e);}}return 0;}
关于这个问题,我不知道如何解决,感觉这样求解很挫,希望有人给我一些指点难过
1 0