九九的代码~

程序代码:
/*
我国有4大淡水湖。
A说:洞庭湖最大,洪泽最小。鄱阳湖第三。
B说:洪泽湖最大,洞庭湖最小,鄱阳湖第二。太湖第三。
C说:洪泽湖最小,洞庭湖第三。
D说:鄱阳湖最大,太湖最小,洪泽湖第二,洞庭湖第三。
4个人每人仅答对了一个,请你编程给出4个湖从大到小的顺序
用C语言或C++编程,如何组织```需要全部过程
*/
#include<stdio.h>
int main()
{
char *p[]={"洞庭湖","洪泽湖","鄱阳湖","太湖"};
int a[24][4]=
{
{1,2,3,4},{1,2,4,3},{1,3,2,4},{1,3,4,2},{1,4,2,3},{1,4,3,2},
{2,1,3,4},{2,1,4,3},{2,3,1,4},{2,3,4,1},{2,4,1,3},{2,4,3,1},
{3,1,2,4},{3,1,4,2},{3,2,1,4},{3,2,4,1},{3,4,1,2},{3,4,2,1},
{4,1,2,3},{4,1,3,2},{4,2,1,3},{4,2,3,1},{4,3,1,2},{4,3,2,1}
};
int i=0;
int j=0;
for (i=0;i<24;i++)
{
int flag=0;
if (((a[i][0]==1)+(a[i][1]==4)+(a[i][2]==3))==1)
flag++;
if (((a[i][1]==1)+(a[i][0]==4)+(a[i][2]==2)+(a[i][3]==3))==1)
flag++;
if (((a[i][1]==4)+(a[i][0]==3))==1)
flag++;
if (((a[i][2]==1)+(a[i][3]==4)+(a[i][1]==2)+(a[i][0]==3))==1)
flag++;
if (flag==4)
for (j=0;j<4;j++)
printf("%-10s%d\n",p[j],a[i][j]);
}
return 0;
}
[此贴子已经被作者于2017-2-9 15:32编辑过]