• java基础---选择结构(一)


    1.什么是if选择结构?

    可以处理单一或组合条件的情况(if选择结构是根据条件判断之后再做处理)

    基本的if选择结构

         if ( 条件 ) {

         //代码块

    }

     条件必须是boolean值

    举例

    import java.util.Scanner;

    public class GetPrize {

    public static void main(String[] args) {

          Scanner input = new Scanner(System.in);

          System.out.print("请输入一个成绩: "); //提示输入Java成绩

          int score = input.nextInt(); //从控制台获取张浩的Java成绩

    if ( score > 90 ) { //判断是否大于90分

           System.out.println("老师说:不错,奖励一个MP4!");

     }

    }

    }

    2.使用复杂条件下的if选择结构?

    &&    条件1 && 条件2    仅仅两个条件同时为真,结果为真

    ||       条件1 || 条件2       只要两个条件有一个为真,结果为真

    !        ! 条件                    条件为真时,结果为假 条件为假时,结果为真

    举例

    import java.util.Scanner;

    public class Case11 {

     public static void main(String[] args) {

        Scanner input=new Scanner(System.in);

        System.out.println("请输入java成绩:");

        int java=input.nextInt();

        System.out.println("请输入音乐成绩:");

        int yinyue=input.nextInt();  

        if(( java>98 && yinyue>80 )||( java==100 && yinyue>70 )){

        System.out.println("奖励");

     }    

    }

    }

    心得:多个条件下使用逻辑运算符,连接起来

    3.随机数字的使用?

    1.产生double型  它的范围在  [0,1)

    public class Case12 {

    public static void main(String[] args) {

    //随机数字

    double a=Math.random();

           System.out.println(a);

    }

    }

    2.产生int型

    public class Case12 {

    public static void main(String[] args) {

           //随机数字

           double a=Math.random();

           int b=(int)(a*10);

           System.out.println(b);

    }

    }

    4.使用if-else选择结构?

    可以处理简单的条件分支情况(if-else选择结构实现对第一个的否定)

    举例1:实现幸运抽奖

    import java.util.Scanner;

    public class Case13 {

    public static void main(String[] args) {

        Scanner input=new Scanner(System.in);

       System.out.println("请输入您的4位会员号:");

       int id=input.nextInt();

       int bai=id%1000/100;

       int random=(int)(Math.random()*10);

       if(bai==random){

       System.out.println("中奖");

       }

       else{

       System.out.println("继续");

    }

    }

    }

    心得:1.输入会员号2.随机数3.比较

    举例2:会员信息录入

    import java.util.Scanner;

    public class Case14 {

    public static void main(String[] args) {

        Scanner input=new Scanner(System.in);

        System.out.println("我行我素购物系统>>客户信息管理>>添加客户信息 :");

        System.out.println("请输入会员卡号:");

        int id=input.nextInt();

        if(id>9999||id<1000){

         System.out.println("请输入4位ID");

        return;

        }

        System.out.println("请输入会员生日:");

        String birthday=input.next();   

        System.out.println("请输入积分:");

        int points=input.nextInt();

    }

    }

    心得:return  停止程序

    5.多重if选择结构?

    可以处理分段的条件分支情况(多个条件:几个连续区间判断)

    举例1:实现学员的结业考试成绩

    import java.util.Scanner;

    public class Case15 {

    public static void main(String[] args) {

         Scanner input=new Scanner(System.in);

        System.out.println("请输入您的成绩");

        double mark=input.nextDouble();

        if(mark>=80){

       System.out.println("良好");

       }

       else if(mark>=60){

       System.out.println("及格");

       }

       else{

      System.out.println("不及格");

     }

    }

    }

    心得:else不必写为“mark>=60 && mark<80”,条件2就是对上面的条件的否定。

    6.嵌套if选择结构?

    作用:可以处理复杂的条件分支情况

    举例:百米赛跑

    import java.util.Scanner;

    public class Case16 {

    public static void main(String[] args) {

        Scanner input=new Scanner(System.in);

        System.out.println("请输入运动员成绩:");

        int score=input.nextInt();

        if(score<10){

                    System.out.println("请输入运动员性别:");

                    String gender=input.next();

                   if(gender.equals("人")){

                              System.o ut.println("男子组");

                              }

                   else if(gender.equals("女")){

                             System.out.println("女子组");

                         }

       }else{

                  System.out.println("没有跑入");

    }

    }

    }

    举例:实际业务购物结算

    import java.util.Scanner;

    public class Case17 {

    public static void main(String[] args) {

             Scanner input=new Scanner(System.in);

             double cost=0;         //消费金额

            boolean isVIP=false;  //是否会员

           double discount=0;     //折扣

           double pay=0;          //支付金额

           System.out.println("请输入您的消费金额:");

           cost=input.nextDouble();

          System.out.println("请输入您的是否为会员:true-是/false-不是");

          isVIP=input.nextBoolean();

          if(isVIP==true){

                            if(cost>200){

                                        discount=0.75;

                           }else{

                                      discount=0.8;

                                }

                           }

         else{

                         if(cost>100){

                                     discount=0.9;

                         }

                        else{

                                    discount=1;

                        }  

    }

          pay=cost*discount;

         System.out.println("您最终支付的金额为"+pay);

    }

    }

    心得:多分支,外层判断是否会员,内层判断达到折扣

  • 相关阅读:
    hdu_2842_Chinese Rings(矩阵快速幂)
    hdu_3565_Bi-peak Number(数位DP)
    hdu_1536_S-Nim(DFS_SG博弈)
    hdu_1848_Fibonacci again and again(博弈sg函数)
    hdu_2147_kiki's game(博弈)
    hdu_2955_Robberies(01背包)
    hdu_5705_Clock("巴卡斯杯" 中国大学生程序设计竞赛
    [POJ2104]K-th Number
    【AHOI2014复仇】
    最长回文子串
  • 原文地址:https://www.cnblogs.com/-lyr/p/9548729.html
Copyright © 2020-2023  润新知