C语言编程题,求大神们解答
A、B、C、D 四支球队进行比赛,最后产生一至四名。甲球迷预测说:“A 队第
一,B 队第三”;乙球迷预测说:“B 队第三,C 队第二”;丙球迷预测说:“C 队第三, A 队第二”;丁球迷预测说:“D 队第三,C 队第一”。最后结果表明四位球迷每人都 预测对了一半,编程计算最后比赛的结果到底是什么?
1回答
-
这都不会
#include <stdio.h>
int main()
{
int a,b,c,d;
for(a = 1; a <= 4; a ++){
for(b = 1; b <= 4; b ++){
if(b == a) continue;
for(c = 1; c <= 4; c ++){
if(c == b || c == a) continue;
for(d = 1; d <= 4; d ++){
if(d == a || d == b || d == c) continue;
if(rightRank(a, b, c, d)) return 0;
}
}
}
}
printf("不存在结果。");
return 0;
}
int rightRank(int a, int b, int c, int d) {
if(a == 1 || b == 3)
if(b == 3 || c == 2)
if(c == 3 || a == 2)
if(d == 3 || c == 1){
printf("正确结果为:a队第%d,b队第%d,c队第%d,d队第%d\n", a, b, c, d);
return 1;
}
return 0;
}写得挺不容易的。希望能点一下采纳。