1、按照需求实现如下代码:
实现剪刀、石头、布的小游戏(按照游戏规则先写出分析,步骤)
import java.util.Scanner;
class Noname1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入剪刀,石头,布");
int guessNum = (int)(Math.random()*3)+1;
String a = "剪刀";
switch (guessNum) {
case 1: a = "剪刀";break;
case 2: a = "石头";break;
case 3: a = "布";break;
default :
}
// System.out.println(guessNum);
while (true) {
String x = sc.next();
int y = 1;
switch (x) {
case "剪刀": y = 1;System.out.println("我输入剪刀"+y);break;
case "石头": y = 2;System.out.println("我输入石头"+y);break;
case "布": y = 3;System.out.println("我输入布"+y);break;
default : System.out.println("只能输入剪刀,石头,布");
}
//胜:y=1,guessNum=3; y=2,guessNum=1; y=3,guessNum=2;
//负:y=3,guessNum=1; y=1,guessNum=2; y=2,guessNum=3;
if ((y==1&&guessNum==3)||( y==2&&guessNum==1)||(y==3&&guessNum==2)) {
System.out.println("胜利了,电脑出的是"+a);
}else if ((y==3&&guessNum==1)||( y==1&&guessNum==2)||(y==2&&guessNum==3)) {
System.out.println("输掉了,电脑出的是"+a);
}else if ((y==1&&guessNum==1)||( y==2&&guessNum==2)||(y==3&&guessNum==3)) {
System.out.println("打平,电脑出的是"+a);
}else {System.out.println("输入错误");}
}
}
}
2、按照需求实现如下代码:
a、定义一个int类型的数组,该数组的长度为10
b、获取10个1 - 100之间的随机数,存储到数组中。并且保证该数组中的元素唯一(没有重复元素);
c、打印数组,格式为:"[元素1, 元素2, 元素3, ...]"
d、求数组中索引为偶数或者元素为偶数的和
class Noname1 {
public static void main(String[] args) {
int[] arr = new int[10];
arr = getRanArr(arr);
print(arr);
evenAdd(arr);
}
public static void evenAdd(int[] arr) {
int sum = 0;
for (int i = 0; i < arr.length ; i++)
{
if (i %2 == 0 || arr[i] %2 == 0) {
sum+=arr[i];
}
}
System.out.println(sum);
}
public static void print(int[] arr) {
System.out.print("[");
for (int i = 0; i < arr.length ; i++)
{
if (i == arr.length-1) {
System.out.println(arr[i]+"]");
}else {System.out.print(arr[i]+",");}
}
}
public static int[] getRanArr(int[] arr) {
int ranNum = -1;
for (int i = 0; i < arr.length ; i++)
{
a:for (;;) {
ranNum = (int)(Math.random()*100)+1;
for (int j =0; j < i; j++)
{
if (arr[j] == ranNum) {
continue a;
}
}
break;
}
arr[i] = ranNum;
}
return arr;
}
}
3、按照需求实现如下代码:
a、常见一个学生类(Student),该类中有学生姓名(name),学生年龄(age),分数(score),总分数(TotalScore)。
生成相对应的geter和seter方法和有参无参构造。
b、总分中记录的是一个班级的总分,目前其他同学的分数都已经统计完成了,TotalScore的值为5356,但是还有
一个同学的没有统计,假如说该同学的:姓名是张三,年龄是19,分数为59。
c、把张三同学的分数统计到总分中,并输出打印总分。
class Noname1 {
public static void main(String[] args) {
Student.totalScore = 5356;
Student st = new Student();
st.setName("张三");
st.setAge(19);
st.setScore(59);
Student.totalScore += st.getScore();
System.out.println(Student.totalScore);
}
}
class Student {
private String name;
private int age;
private int score;
static int totalScore;
public Student(){}
public Student(String name,int age,int score) {
this.name = name;
this.age = age;
this.score = score;
}
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setAge(int age) {
this.age = age;
}
public int getAge() {
return age;
}
public void setScore(int score) {
this.score = score;
}
public int getScore() {
return score;
}
}
|
|