本人新手小白!请大佬指教!
自学了几天并写了个特别简单但对于我来说并不那么简单的练习,最后一个while循环,想用户输入错误的话就重新来过,做了好久做不出来,我照着网上的代码做出来了,但是都不知道为啥成立了{:1_908:}
有没有大佬指教一下,代码中的能改的点,万分感谢!!!
[Java] 纯文本查看 复制代码 package com.Test;
import java.util.Random;
import java.util.Scanner;
public class MomSeesBeaten {
public static void main(String[] args) {
int[] arr = new int[3];
Scanner sc = new Scanner(System.in);
System.out.println("本程序仅供娱乐,请给祖国的花朵多一点点爱!!!");
System.out.println("输入任意的数字按键并按下回车开始");
sc.nextInt();
System.out.println("***程序指定科目为:语 数 外 ;单门成绩满分指定成绩为 100 分;总分为: 300 分***");
for (int i = 0; i < arr.length; i++) {
System.out.println("请输入第 " + (i + 1) + " 门成绩");
int score = sc.nextInt();
if (score > 0 && score < 100) {
arr[i] = score;
} else {
System.out.println("您输入的成绩不正确,请检查成绩并重新输入!");
i--;
}
}
int sum = 0;
// 遍历数组 数据相加求和
for (int i = 0; i < arr.length; i++) {
sum += arr[i];
}
System.out.println("您这次考试的成绩总分数为:" + sum + " 分");
if (sum > 270) {
System.out.println("这次的考试成绩分数很好,奖励 ” *** “ ,希望下次继续努力!!");
}
if (sum < 270 && sum > 240) {
System.out.println("这次考试成绩不错,奖励 ” *** “ ,希望下次继续努力!!");
}
if (sum < 240 && sum > 210) {
System.out.println("这次考试成绩还行,奖励 ” *** “ ,希望下次更上一层楼!!");
}
if (sum < 210 && sum > 180) {
System.out.println("这次考试成绩将就,奖励呢就没有了,惩罚呢也没有 ,希望下次不是这个结果!!");
} else {
System.out.println("在下面的惩罚中选择一个,结束这混蛋的成绩");
System.out.println("1、竹笋炒肉 2、笋子炒肉 3、笋子熬肉 4、让程序帮你选个,并在下面输入 4 进行自动选择!!");
while (true) {
try {
int ss = sc.nextInt();
if (ss == 4) {
String[] st = new String[3];
st[0] = "1、竹笋炒肉 ";
st[1] = "2、笋子炒肉 ";
st[2] = "3、笋子熬肉 ";
Random ran = new Random();
int nextlnt = ran.nextInt(3);
System.out.println("恭喜您,这次你选到的奖励为:" + st[nextlnt]);
System.out.println();
System.out.println();
System.out.println();
System.out.println();
System.out.println("老哥,打完的话听弟一句劝,打重了,可能老了以后伤风感冒就得吃席了!!!");
break;
} else {
System.out.println("您的输入错误请重新选择");
}
} catch (Exception e) {
}
}
}
}
}
|