练习:16

  • 训练:if多重结构,验证数字是否正确,验证输入的字符串是否正确,随机数产生(模拟幸运抽奖)
  • 条件严格,每输入一次都会有验证,当输入正确,将执行下面的代码,若输入错误,则停止执行下面的代码

原题目:

刘珊珊参加了ACCP的学习,她父母承诺:

    如果考试成绩==100分,父亲给她买辆车;
    如果考试成绩>=90分,母亲给她买台笔记本电脑;
    如果考试成绩>=60分,母亲给她买部手机;
    如果考试成绩<60分,没有礼物。

参考代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import java.util.Scanner;
public class P95_21{
    public static void main (String[]args){
        Scanner input = new Scanner (System.in);
        System.out.println("请输入姓名(请按照教材第95页,简答题第一小题的提示输入正确的姓名):");
        String Name = input.next();//录入姓名
        if ( Name.equals("刘珊珊") ){ //验证姓名是否正确
            System.out.println("请输入考试成绩:");
        } else {
            System.out.println("姓名输入错误,请按照教材第95页,简答题第一小题的提示输入正确的姓名");//若录入姓名错误,则提示错误信息
        }
        int liuScore = input.nextInt();//录入考试成绩
         if ( liuScore == 100  ){ //当成绩等于100时,该获得的奖励
            System.out.println(Name+"恭喜你,你获得了一辆车");
            System.out.println("请输入一个幸运数字(10以内):");//幸运数字
        } else if ( liuScore &gt;= 90 &amp;&amp; liuScore &lt; 100 ){ //当成绩大于90小于100时获得的奖励            System.out.println(Name+"恭喜你,你获得了一台笔记本电脑");             System.out.println("请输入一个幸运数字(10以内):");//幸运数字         } else if ( liuScore &gt;= 60 &amp;&amp; liuScore &lt; 90 ){ //当成绩大于60小于90时获得的奖励
            System.out.println(Name+"恭喜你,你获得了一部手机");
            System.out.println("请输入一个幸运数字(10以内):");//幸运数字
        } else if ( liuScore &lt; 60 &amp;&amp; liuScore &gt; 0 ){ //定义当成绩小于60大于0时提示没有奖励
            System.out.println("对不起,你没有获得奖励");
            System.out.println("请输入一个幸运数字(10以内):");//幸运数字
        }
        else {
            System.out.println("数字输入错误,请检查!");//当数字大于100或小于0时,做出错误提示
        }
         int num = input.nextInt();//从键盘录入数字
         int random = (int)(Math.random()*10);//产生10以内的随机数
         if ( num == random ){
             System.out.println("恭喜你,幸运数字已为你带来财富.奖励为MP4一个");//幸运数字吻合,输出奖励
         } else {
             System.out.println("对不起,这个数字看起来不适合你,请再接再厉,通过成绩获得奖励!");//数字不相符,输出错误
         }
    }
}