if和if else语句的使用(题目练习)

【编程1

画出流程图并编程实现:按会员优惠划进行购物结算

需求说明

商场购物可以打折,具体办法如下普通顾客购物满100元打9折;会员购物打8折;会员购物满200元打7.5折,请根据此优惠计划进行购物结算。

程序运行结果如图所示。

输出顾客实际购物价格

实现思路及关键代码

1使用嵌套if选择结构实现。

2先判断顾客是否是会员,在if选择结构内再判断顾客购物是否达到相应打折的数量要求,根据判断结果做不同的处理。

import java.util.Scanner;

public class me {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        //用于键盘输入输入的值为scanner
        String member;
        //定义会员的变量
        System.out.println("请输入是否是会员:是(y)/否(其他字符)");
        member = scanner.next();
        //会员变量等于从键盘输入的值

        double money;
        //定义金额
        System.out.println("请输入购物金额:");
        money = scanner.nextDouble();
        //金额变量等于从键盘输入的值
        if (member.equals("y")) {
            //equals()判断是否相等
            if (money >= 100 && money < 200) {
                //如果金额大于等于100小于200
                System.out.println("会员实际支付:" + money * 0.8);

            }
            if (money >= 200) {
                //如果金额大于等于200
                System.out.println("会员实际支付:" + money * 0.75);
            }
            if (money < 100) {
                //金额小于100
                System.out.println("会员实际支付:" + money);
            }
        } else {
            //否则
            if (money >=100) {
                //非会员
                //金额的大于等于100
                System.out.println("非会员支付:" + money * 0.9);
            } else {
            //否则
                System.out.println("非会员支付:" + money);
            }

        }
    }
}

【编程2

画出流程图并编程实现:计算会员折扣

需求说明

会员购物时,根据积分的不同享受不同的折扣,如表所示。从键盘上输入会员积分,计算该会员购物时获得的折扣。

会员折扣表

程序运行结果如图所示。

上机练习运行结果

提示:     使用Eclipsee平台创建文件,命名为CalcDiscount.java

利用图3.17所示的数轴来分界,使用多重if选择结构实现。

                                                        图3.17数轴

 代码实现:

import java.util.Scanner;

public class CalcDiscount {
    public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);
        //可以用于键盘输入
        System.out.println("请输入会员积分:");
        int x;
        //定义变量
        x=scanner.nextInt();
        //输出键盘输入的数值
        //x=积分
        if (x<2000){
            //如果积分小于2000则打印折扣是0.9折
            System.out.println("该会员享受的折扣是:0.9");
        }else{
            if (2000<=x&&x<=4000){
                //&&:表示and,如果积分大于等于2000小于4000
                System.out.println("该会员享受的折扣是:0.8");
            }else{
                if (x>=4000&&x<8000){
                    //如果积分大于等于4000小于8000
                    System.out.println("该会员享受的折扣是:0.7");
                }else{
                    //否则x大于等于8000
                    System.out.println("该会员享受的折扣是:0.6");
                }
            }
        }
        
    }
}

【编程3

画出流程图并编程实现从键盘获取小张Java的成绩和音乐的成绩。如果小张的Java成绩大于98分,而且音乐成绩大于80分,则老师奖励他;或者如果其Java成绩等于100分,而且音乐成绩大于70分,老师也可以奖励他。

程序运行结果如图所示:

 代码如下:

import java.util.Scanner;

public class Score {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        //在键盘输入成绩
        System.out.println("音乐成绩:");
        double scorem;
        //音乐成绩
        scorem = scanner.nextDouble();
        //打印出输入的音乐成绩

        System.out.println("java成绩:");
        double scorejava;
        //java成绩
        scorejava = scanner.nextDouble();
        //打印输入的java成绩

        if (scorem>80&&scorejava>98){
            //如果音乐成绩大于80 and java成绩大于98
            System.out.println("老师说:不错,奖励一个MP4!");
        }else if(scorejava>=100&&scorem>70){
            //如果java成绩等于100 and 音乐成绩大于70
            System.out.println("老师说:不错,奖励一个MP4!");
        }else {
            //否则成绩不合格
            System.out.println("不好意思,成绩不合格!没有奖励~");
        }

    }
}

【编程4

画出流程图并编程实现实现幸运抽奖

需求说明

商场实行新的抽奖规则如果会员号的千位数字等于产生的随机数字,则该会员为幸运会员,且实现如下要求。

从键盘上接收会员号。

使用if-else选择结构实现幸运抽奖。

运行结果如图所示。

幸运会员输出结果

非幸运会员输出结果

实现思路及关键代码

(1)产生随机数。

(2)从控制台接收一个4位会员号。

(3)分解获得的千位数。

代码:

import java.util.Random;
import java.util.Scanner;

public class LuckyMember {
    public static void main(String[] args) {
        System.out.println("我行我素购物管理系统> 幸运抽奖");
        Random Ran = new Random();
        //生成对象
        int y;
        //中奖的号码(随机数)
        y=Ran.nextInt(9000)+1000;
        //生成1000~9999之间的随机数
        //System.out.println("生成的随机数:"+y);//查看随机生成的随机数方便验证


        //输入会员号
        System.out.println("请输入4位会员号:");
        Scanner scanner = new Scanner(System.in);
        int x;
        //会员号
        x=scanner.nextInt();
        //获取从键盘输入的数字

        if (x==y){
            //如果输入的会员号等于随机生成的号码数
            System.out.println(x+"号客户是幸运客户,获精美MP3一个。");
        }else{
            //否则
            System.out.println(x+"号客户,谢谢您的支持!");
        }

    }
}

【编程5

第一题:编程实现键盘输入用户名和密码。如果用户名等于字符‘青’,且密码等于数字123,则输出“欢迎你,青”;否则,输出“对不起,你不是青”。

提示:使用equals方法判断两个字符串是否相等。

import java.util.Scanner;

public class Users {
    public static void main(String[] args) {
        Scanner user = new Scanner(System.in);
        //从键盘输入
        System.out.println("请输入用户名:");
        String name;
        //定义用户名
        name=user.nextLine();
        //接受输入的用户名

        int password=123;
        //密码
        System.out.println("请输入密码:");
        password=user.nextInt();
        //接受输入的密码

        if (name.equals("青")){
            //equals()判断是否相等
            if (password==password){
                //判断密码是否正确
                System.out.println("欢迎你,青");
            }
        }else {
            System.out.println("对不起,你不是青");
        }

        }

    }

第二题:编程实现键盘输入年龄和性别。如果年龄满7岁,或者年龄满5岁并且性别是“男”,就可以搬动桌子。

提示使用if选择结构实现,判断条件是年龄大于等于7,或年龄大于等于5且性别是男。

import java.util.Scanner;

public class Age {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        //从键盘输入
        System.out.println("请输入性别:");
        String sex;
        //定义性别
        sex=scanner.nextLine();
        //接受输入的的性别

        int age;
        //年龄
        System.out.println("请输入年龄:");
        age=scanner.nextInt();
        //接受输入的年龄

        if (sex.equals("男")){
            //equals()判断是否相等,判断是不是男生
            if (age>=5){
                //判断年龄
                System.out.println("能搬得动桌子");
            }else {
                //否则
                System.out.println("不能搬得动桌子");
            }

        }else if (age>7){
            //年龄大于七岁
            System.out.println("能搬动桌子");
        }else {
            //否则不能搬桌子
            System.out.println("不能搬得动桌子");
        }

    }
}

【编程6

画出流程图并编程实现从键盘上输入3个整数,分别赋给整型变量a、b、c,然后将输入的整数按照从小到大的顺序放在变量a、b、c中,并输出3个变量的值。

提示进行比较和交换值操作。首先让ab、ac进行比较,保证a是3个整数中最小的,然后让bc进行比较,保证b是两个数中最小的。

import java.util.Scanner;

public class Rather {
    public static void main(String[] args) {
        Scanner score = new Scanner(System.in);
        //从键盘输入变量
        System.out.println("请输入");
        int a;
        int b;
        int c;
        a = score.nextInt();
        //接收a的值
        b = score.nextInt();
        //接收b的值
        c = score.nextInt();
        //接收c的值

        //三个变量比较大小有六种情况,a<b<c,c<a<b,a<c<b,b<a<c,c<b<a,b<c<a
        if (a < b) {
        //如果a小于b,c大于b在,则a最小
            if (c > b) {
                System.out.println(a+"<"+b+"<"+c);
                //输出a<b<c

            }else if (c<a){
                //如果a小于b,c小于a,则c是最小,输出c<a<b
                System.out.println(c+"<"+a+"<"+b);

            }else {
                //没有满足上述条件的话就是a<c<b
                System.out.println(a+"<"+c+"<"+b);
            }
        }else {
            if (a<c){
                //如果a小于c,b<a<c
                System.out.println(b+"<"+a+"<"+c);
            }else if (c<b){
                //如果c大于b,c<b<a
                System.out.println(c+"<"+b+"<"+a);
            }else {
                //b<c<a
                System.out.println(b+"<"+c+"<"+a);
            }
        }
}
}

【编程7

画出流程图并编程实现某人准备去海南旅游,现在要订购机票。机票的价格受季节旺季、淡季的影响,头等舱和经济舱价格也不同。假设机票原价为6500元,4-10月为旺季,旺季头等舱打九折,经济舱打八折,淡季头等舱打五折,经济舱打四折。编写程序,使用嵌套if选择结构,根据出行的月份和选择的舱位输出实际的机票价格,如图3.18所示。

提示: 判断出行月份是旺季还是淡季。

对于旺季、淡季月份均判断舱位类型

使用equals方法判断两个字符串是否相等。

 

                                         运行结果

import java.util.Scanner;
public class Test006 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入出行月份(1~12):");
        int month = sc.nextInt();
        System.out.println("选择头等舱还是经济舱?输入T为头等舱,输入J为经济舱");
        String c = sc.next();
        int pj= 6500;
        System.out.println("您选择的机票价格为:");
        if (c.equals("T")){
            //头等舱
            if (month>=4&&month<=10){
                pj*=0.9;
            }else {
                pj*=0.5;
            }
        }else{ //经济舱
            if (month>=4&&month<=10){
                pj*=0.8;
            }else{
                pj*=0.4;
            }
        }
        System.out.println("您选择地机票价格为:"+pj);
    }
    
}

  • 1
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值