代码设计:
package ss;
import java.util.Scanner;
/**
* 排球计分系统
*
* 使用排球计分系统可以进行简单的排球计分操作以及查询某一局的比分。
* 1、比赛总共5局,每一局5分,若是有一方领先对方3分,则视为这一方胜利。
* 5局结束后,统计两方胜利的次数,输出最终胜利的一方。并退出程序
* 2、使用查询功能可以查询过往的比赛成绩,输出比分和胜利的一方
*/
public class Game {
static Scanner sca = new Scanner(System.in);
//scoreArr数组,用来存放5局两队的单轮成绩
static int[][] scoreArr = new int[5][2];
//result数组,用来存放每一轮的成绩,方便查询
static String[] result = new String[5];
//用来统计两队胜利的次数
static int ni1 = 0;
static int ni2 = 0;
public static void main(String[] args) {
System.out.println("\n\n --------欢迎进入ww排球计分系统--------\n\n\n");
System.out.println("使用说明:使用ww排球计分系统可以进行简单的排球计分操作以及查询某一局的比分。" + "\n1、比赛总共5局,每一局5分,若是有一方领先对方3分,则视为这一方胜利。"
+ "\n 5局结束后,统计两方胜利的次数,输出最终胜利的一方。并退出程序\n" + "2、使用查询功能可以查询过往的比赛成绩,输出比分和胜利的一方");
for (int i = 0; i < 5;) {
System.out.println(" 请选择您的操作:");
System.out.println("1、开始计分 2、查询 3、退出系统");
//用户输入的操作选择
int choose = sca.nextInt();
//如果用户输入1
if (choose == 1) {
//输出第几局比赛
System.out.println("现在开始第" + (i + 1) + "局比赛");
//调用计分方法
bounds(i);
i++;
} else if (choose == 2) {//如果用户输出2
System.out.println("请输入你要查询的局数:");
int check = sca.nextInt();
//判断用户输入的局数是否开始
if (result[check - 1] == null) {
System.out.println("这一局比赛还没有开始。");
} else {
//从数组中找出结果
System.out.println(result[check - 1]);
}
} else if (choose == 3) {//如果用户输入3,输出当前成绩,并退出程序
System.out.println("本场比赛结束,当前比分为:中国队VS美国队~~~~~" + ni1 + ":" + ni2);
System.out.println("谢谢使用ww计分系统,欢迎下次使用,再见");
System.exit(0);
} else {
System.out.println("您的输入有误,请重新输入");
}
}
//5局比赛结束后,本场比赛结束,输出结果,并退出程序
System.out.println("本场比赛结束,当前比分为:中国队VS美国队~~~~~" + ni1 + ":" + ni2);
if (ni1 > ni2) {
System.out.println("中国队取得最终胜利");
} else {
System.out.println("美国队取得最终胜利");
}
System.out.println("谢谢使用ww计分系统,欢迎下次使用,再见");
}
// 计分方法,统计成绩
public static String[] bounds(int num) {
int i = 0;
//如果两队的成绩都小于等于5
if (scoreArr[num][0] <= 5 && scoreArr[num][1] <= 5) {
for (;; i++) {
System.out.println("请输出获胜方的编号,进行加分");
System.out.println("1、中国队 VS 2、美国队");
int team = sca.nextInt();
if (team == 1) {
//保留每一局的成绩
scoreArr[num][0] += 1;
System.out.println("第" + (i + 1) + "轮比赛结束,当前比分为" + scoreArr[num][0] + ":" + scoreArr[num][1]);
} else if (team == 2) {
scoreArr[num][1] += 1;
System.out.println("第" + (i + 1) + "轮比赛结束,当前比分为" + scoreArr[num][0] + ":" + scoreArr[num][1]);
}
if ((scoreArr[num][0] - scoreArr[num][1]) == 3) {
result[num] = "第" + (num + 1) + "局,比分为" + scoreArr[num][0] + ":" + scoreArr[num][1] + " 中国队胜利";
System.out.println(result[num]);
//每轮比赛结束后,使最终成绩累加1,并返回
ni1 += 1;
return result;
} else if ((scoreArr[num][1] - scoreArr[num][0]) == 3) {
result[num] = "第" + (num + 1) + "局,比分为" + scoreArr[num][0] + ":" + scoreArr[num][1] + " 美国队胜利";
System.out.println(result[num]);
ni2 += 1;
return result;
}
}
} else if (scoreArr[num][0] > scoreArr[num][1]) {
result[num] = "第" + (num + 1) + "局,比分为" + scoreArr[num][0] + ":" + scoreArr[num][1] + " 中国队胜利";
System.out.println(result[num]);
ni1 += 1;
return result;
} else {
result[num] = "第" + (num + 1) + "局,比分为" + scoreArr[num][0] + ":" + scoreArr[num][1] + " 美国队胜利";
System.out.println(result[num]);
ni2 += 1;
return result;
}
}
}
运行界面:
PsP耗时:
总结:由于学习Java的时间不是很长写这个项目的时候遇到了一些问题,不过最后都解决了,因为学过C#,两者的基础也比较像似,用的时间也不是很多,由于时间比较紧张,公司正在做项目,或许不能像在学校有充足的时间,但是我一定认真的对待的。