c++一个关于单循环赛的得分榜问题

来源:百度知道 编辑:UC知道 时间:2024/05/22 03:04:27
A、B、C、D 四个学校举行足球赛,比赛采用单循环制,即一共6 场比赛,比分如下: A 对B 为2:1,A 对 C 为 1:4,A 对D 为2:2,B 对 C 为3:1,B 对D 为4:2,C 对D 为 1:1。
想列出积分榜,并求出各队的“胜利”场次,自制代码如下:
#include"iostream.h"
int main()
{
int score[][4]={0,2,1,2,1,0,3,4,4,1,0,1,2,2,1,0};
const int size=sizeof(score)/16;
cout<<"积分榜如下:"<<endl;
for (int i=0;i<4;i++)
{
for (int j=0;j<4;j++)
cout<<" "<<score[i][j];
cout<<endl;
}

int A,B,C,D;
for (int k=0;k<4;k++)
{
int S=0;//S值储存各组的胜场
for (int j=0;j<4;j++)
{
(score[k][j]>score[j][k])?(S=S+1):(S=S+0);
}
cout<<S<<endl;
}
return 0;
}
得出结果:
0 2 1 2
1 0 3 4
4 1 0 1
2 2 1 0
1
2
1
0
我想让下面的胜利场次1、2、1、0能与各队队名联系上,即:
A=1
B=2
C=1
D=0
要怎样修改我的代码呢?

#include"iostream.h"
int main()
{
int score[][4]={0,2,1,2,1,0,3,4,4,1,0,1,2,2,1,0};
char m[4]={'A','B','C','D'};
const int size=sizeof(score)/16;
cout<<"积分榜如下:"<<endl;
for (int i=0;i<4;i++)
{
for (int j=0;j<4;j++)
cout<<" "<<score[i][j];
cout<<endl;
}

int A,B,C,D;
for (int k=0;k<4;k++)
{
int S=0;//S值储存各组的胜场
for (int j=0;j<4;j++)
{
(score[k][j]>score[j][k])?(S=S+1):(S=S+0);
}
cout<<m[k]<<'='<<S<<endl;
}
return 0;
}