JavaSE教程-03Java中分支语句与四种进制转换-练习

练习1:

老师如果带100或以上则请客吃饭

import java.util.Scanner;
public class Test2{
    public static void main(String[] args){
        //练习1:老师如果带100或以上则请客吃饭
        Scanner input=new Scanner(System.in);//为了是变量可以用键盘输入
        System.out.println("请输入口袋中有多少钱:");
        int money=input.nextInt();//将键盘录入的数值赋值给变量money

        //if 条件语句
        if(money>=100){
            System.out.println("老师请吃饭1");
        }

        //if……else语句
        if(money>=100){
            System.out.println("老师请吃饭2");
        }else{
            System.out.println("老师请雪糕2");
        }


        //多重if:if……else if……else … else
        if(money>=100){
            System.out.println("老师请吃饭3");
        }else if(money>=50){
            System.out.println("老师请雪糕3");
        }
        else if(money>=20){
            System.out.println("老师发微信红包3");
        }else{
            System.out.println("老师太穷了,得努力工作了3");
        }

    }

}

这里写图片描述

练习2:

设计一个密码校验程序,要求用户通过键盘录入密码,如果密码为123456,则打印“密码输入正确”,否则打印“密码错误,请重新输入密码”

import java.util.Scanner;
public class Test3{
    public static void main(String[] args){
        //设计一个密码校验程序,要求用户通过键盘录入密码,
        //如果密码为123456,则打印“密码输入正确”,否则打印“密码错误,请重新输入密码”

        Scanner input=new Scanner(System.in);
        System.out.println("请输入密码:");
        int password=input.nextInt();

        if(password==123456){
            System.out.println("密码正确");
        }else{
            System.out.println("密码错误,请重新输入");
            System.out.println("请重新输入密码:");
            password=input.nextInt();
        }

    }

}

练习3:

通过键盘录入学生成绩
如果在90-100之间,则打印“A”,
否则如果在80-90之间,则打印“B”,
否则如果在70-80之间,则打印“C”
否则如果在60-70之间,则打印“D”
否则打印“E”

import java.util.Scanner;
public class Test4{
    public static void main(String[] args){
        /*通过键盘录入学生成绩
            如果在90-100之间,则打印“A”,
            否则如果在80-90之间,则打印“B”,
            否则如果在70-80之间,则打印“C”
            否则如果在60-70之间,则打印“D”
            否则打印“E”
        */

        Scanner input=new Scanner(System.in);
        System.out.println("请输入学生成绩:");
        int score=input.nextInt();

        if(score>100||score<0){
            System.out.println("请输入0~100之间的数");
        }else{
            if(score>=90&&score<=100){
                System.out.println("A");
            }else if(score>=80){
            //这里score<90可有可无,因为这是在上一步的基础上做条件判断的,
            //上一步已经可以得到score<90.
                System.out.println("B");
            }else if(score>=70){
                System.out.println("C");
            }else if(score>=60){
                System.out.println("D");
            }else{
                System.out.println("E");
            }
        }

    }

}

这里写图片描述

练习4:

做一个纠结者终结器,
解决从周一到周日,一周的吃饭决定难问题,
根据用户录入的数字,
分别对1-7输出不同的选择项

import java.util.Scanner;
public class Test5{
    public static void main(String[] args){
        /*  做一个纠结者终结器,
            解决从周一到周日,一周的吃饭决定难问题,
            根据用户录入的数字,
            分别对1-7输出不同的选择项
        */

        Scanner input=new Scanner(System.in);
        System.out.println("请输入今天是周几:");
        int week=input.nextInt();

        switch(week){
            case 1:
                System.out.println("今天吃稀饭1");
                break;
            case 2:
                System.out.println("今天吃油条2");
                break;
            case 3:
                System.out.println("今天吃青菜3");
                break;
            case 4:
                System.out.println("今天吃馒头4");
                break;
            case 5:
                System.out.println("今天吃包子5");
                break;
            case 6:
                System.out.println("今天吃面条6");
                break;
            case 7:
                System.out.println("今天吃河粉7");
                break;
            default:
                System.out.println("今天吃鸡蛋default");
                break;
        }


    }

}

这里写图片描述

练习5:

某朋友说,如果存款超过100万,则入手宝马X5,
否则超过50万,则入手奥迪A6,否则超过20万,
则入手比亚迪,否则超过10万则玩玩极品飞车游戏,
请编写一个购车选择程序,
根据输入的金额,提示可以购买的车型。

import java.util.Scanner;
public class Homework1{
    public static void main(String[] args){
        /*1.某朋友说,如果存款超过100万,则入手宝马X5,
        否则超过50万,则入手奥迪A6,否则超过20万,
        则入手比亚迪,否则超过10万则玩玩极品飞车游戏,
        请编写一个购车选择程序,
        根据输入的金额,提示可以购买的车型。*/
        Scanner input=new Scanner(System.in);
        System.out.println("请输入你有多少存款,来推荐购买车型:");
        int money=input.nextInt();

        if(money>100*10000){
            System.out.println("我的存款有100万,我要买宝马!");
        }else if(money>50*10000){
            System.out.println("我的存款有50万,我要买奥迪!");
        }else if(money>20*10000){
            System.out.println("我的存款有20万,我要买雅迪!");
        }else if(money>10*10000){
            System.out.println("我的存款有10万,我要玩极品飞车!");
        }else{
            System.out.println("太穷了,还是好好工作吧!");
        }

    }
}

练习6:

从键盘录入输入3 个数a,b,c,按从大到小进行输出(难度大)

import java.util.Scanner;

public class Homework3{
    public static void main(String[] args){
        //3.从键盘录入输入3 个数a,b,c,按从大到小进行输出(难度大)
        Scanner input=new Scanner(System.in);
        System.out.println("请输入第一个数:");
        int a=input.nextInt();
        System.out.println("请输入第二个数:");
        int b=input.nextInt();
        System.out.println("请输入第三个数:");
        int c=input.nextInt();

        /*
        //方法一:缺点:需要重新定义三个变量;有点易理解

        int first=(a>b)?a:b;
        first=(first>c)?first:c;

        int last=(a<b)?a:b;
        last=(last<c)?last:c;

        //获取中间值法一
        int second=(a+b+c)-first-last;

        //获取中间值法一
        int second;
        if(a==b||a==c){
            second=a;
        }else if(b==c){
            second=b;
        }else{
            if(a>last&&a<first){
                second=a;
            }else{
                second=(b>last&&b<first)?b:c;
            }
        }

        System.out.println("三个数从大到小排列结果:"+first+"  "+second+"  "+last);

        */

        //方法二:不需要定义三个变量,但过程复杂
        if(a>=b){
            if(b>=c){
                //a>=b b>=c
                System.out.println("三个数从大到小排列:"+a+"   "+b+"    "+c);
            }else{
                //a>=b c>=b
                if(a>=c){
                    System.out.println("三个数从大到小排列:"+a+"   "+c+"    "+b);
                }else{
                    //a>=b c>=a
                    System.out.println("三个数从大到小排列:"+c+"   "+a+"    "+b);
                }
            }
        }else{
            //b>=a
            if(a>=c){
                //b>=a a>=c
                System.out.println("三个数从大到小排列:"+b+"   "+a+"    "+c);
            }else{
                //b>=a c>=a
                if(b>=c){
                    //b>=c c>=a
                    System.out.println("三个数从大到小排列:"+b+"   "+c+"    "+a);
                }else{
                    //c>=b c>=a b>=a
                    System.out.println("三个数从大到小排列:"+c+"   "+b+"    "+a);

                }
            }
        }

        //方法二改版:最外层先获取最大值,第二层再获取第二大值,更好理解
        if(a>=b&&a>=c){
            if(b>=c){
                System.out.println("三个数从大到小排列:"+a+"   "+b+"    "+c);
            }else{
                System.out.println("三个数从大到小排列:"+a+"   "+c+"    "+b);
            }
        }else if(b>=a&&b>=c){
            if(a>=c){
                System.out.println("三个数从大到小排列:"+b+"   "+a+"    "+c);
            }else{
                System.out.println("三个数从大到小排列:"+b+"   "+c+"    "+a);
            }
        }else{
            if(a>=b){
                System.out.println("三个数从大到小排列:"+c+"   "+a+"    "+b);
            }else{
                System.out.println("三个数从大到小排列:"+c+"   "+b+"    "+a);
            }
        }
    }
}

练习7:

请用最有效率的方式写出计算2乘以8、2乘以32的运算方式

public class WeiYunSuan{
    public static void main(String[] args){
        //请用最有效率的方式写出计算2乘以8、2乘以32的运算方式
        int a=2;
        int b=2;
        System.out.println(a<<3);
        System.out.println(b<<5);

    }
}
原文地址:https://www.cnblogs.com/TCB-Java/p/6770165.html