目的:
有偶数支足球队进行单循环比赛,请按照指定算法打印每轮的对阵形势.
比如, 有如下球队:
china,England,Germany,Italy,France,Agentia。要求:
第一轮的输出结果如下:
China–VS–Agentina
England–VS–France
Germany—VS–Italy具体实现
把六支球队存储在一个一维的数组中;
第一轮比赛结束后,第一支队伍不变,第2—4支队伍依次向后移动,最后一个队伍放在第二个位置;
再按照:
队伍1–VS–队伍6
队伍2–VS–队伍5
队伍3–VS–队伍4
的规律进行PK,直到一支队伍与另外五支PK一遍,则PK结束。代码实现如下:
package com.zzti.scs.peter.homework;
import java.util.Scanner;
/**
*
* 实现足球队进行单循环比赛
* @author peter
* @version 1.0
* @date 2015年7月26日
*/
public class Zhang5T2 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//产生一个扫描
Scanner input = new Scanner(System.in);
System.out.print("请问你想看前几轮的比赛?");
//手工输入
int count = input.nextInt();
//调用game函数,并传参数
game(count);
input.close();
}
public static int game(int count){
//定义一个数组,存储队伍的名字
String team[]={"china","England","Germany","Italy","France","Agentia"};
//定义并初始化中间变量
String temp = "";
//外层循环实现比赛的轮数
for(int i=0;i<count;i++){
System.out.println("第"+(i+1)+"轮:");
//内层循环实现输出对阵情况
for(int j=0;j<team.length/2;j++){
System.out.println(team[j]+"--VS--"+team[team.length-j-1]);
}
//实现球队的变换;即:从a[1]数组后移,a[1] = a[5]
temp = team[5];
for(int k = team.length-1;k>=2;k--){
team[k] = team[k-1];
}
team[1] = temp;
}
return 0;
}
}
运行结果如下: