栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

[Java] if-else语句练习题

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

[Java] if-else语句练习题

练习一:根据代码得出z的值

package zzx.com;

import java.util.Scanner;

public class yyds {
    public static void main(String[] args) {
        boolean x = true;
        boolean y = false;
        short z = 40;
        if((z++ ==40) && (y = true))
            z++;
        if((x = false) || (++z == 43))
            z++;
        System.out.println("z = " + z);
        }
    }

解析:

答案:z的值为44

回顾: ①前++与后++的区别与联系:前++,先++后运算;后++,先运算后++。前++与后++都会使变量数值加一 ②注意是 = 还是 == ③if(true),括号内为true时才会进行if语句,false时不再进行。括号内具体是false还是true也要考虑运算符

练习二:将键盘上键入的三个数从小到大排序

package zzx.com;

import java.util.Scanner;

public class yyds {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        System.out.println("请输入第一个数:");
        int num1 = in.nextInt();
        System.out.println("请输入第二个数:");
        int num2 = in.nextInt();
        System.out.println("请输入第三个数:");
        int num3 = in.nextInt();
        if(num1 > num2) {
            if(num3 > num1)
                System.out.println(num2 + " " + num1 + " " + num3);
            else if(num3 < num2)
                System.out.println(num3 + " " + num2 + " " + num1);
            else
                System.out.println(num2 + " " + num3 + " " + num1);
        }else { //num2 >= num1
            if(num3 > num2)
                System.out.println(num1 + " " + num2 + " " + num3);
            else if(num3 < num1)
                System.out.println(num3 + " " + num1 + " " + num2);
            else
                System.out.println(num1 + " " + num3 + " " + num2);
        }
    }
}
解析:

回顾: ①看准题目要求是从小到大还是从大到小 ②有关数据大小问题,可以采取数学中的坐标轴作为辅助 

练习三:

 

①方法一
package zzx.com;

import java.util.Scanner;

public class yyds {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        System.out.println("请输入狗狗的年龄:");
        double age = in.nextDouble();
        double num = 0.0;
        if(age < 0)
            System.out.println("请输入正确年龄!");
        if(age <= 2.0){
            for (int i = 0; i < (int) age; i++){
                num = num + 10.5;
            }
        }else{
            num = 21.0;
            for(int i = 0;i < (int)age-2;i++){
                num = num + 4;
            }
        }
        System.out.println("狗狗的年龄相当于人类的" + num + "岁");
    }
}

②方法二 (可能更好一些)

package zzx.com;

import java.util.Scanner;

public class yyds {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        System.out.println("请输入狗狗的年龄:");
        double age = in.nextInt();
        double num = 0;
        if(age <= 2)
            num = age * 10.5;
        else if(age > 2)
            num = 10.5*2 + (int)(age-2) * 4;
        else
            System.out.println("请输入正确的年龄!");
        System.out.println("狗狗的年龄相当于人类的" + num + "岁");
    }
}
回顾: ①涉及“这些条件都不满足时,输出····”时,优先考虑if-else语句,结构更清晰,内存占比小 ②注意数据的类型,必要时可以采取强制类型转换 ③思考问题时要全面一些,面面俱到,不要懒省事 练习四:

package zzx.com;

import java.util.Scanner;

public class yyds {
public static void weishu(int x,int y){
    int x1 = 0;
    int x2 = 0;
    int y1 = 0;
    int y2 = 0;
    x2 = x % 10;
    x1 = x/10;
    y2 = x % 10;
    y1 = y /10;
    if(x1 == y1 && x2 == y2)
        System.out.println("奖金10000美元");
     else if(x1 == y2 && x2 == y1)
        System.out.println("奖金3000美元");
     else if(x1 == y1 || x2 ==y2)
        System.out.println("奖金1000美元");
     else if(x1 == y2 || x2 == y1)
        System.out.println("奖金500美元");
     else
        System.out.println("彩票作废");
}
public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int randomSum = (int)(Math.random() * 90 + 10);//生成[10,99]其中一个随机数
        System.out.println("请输入一个两位数[10~99]:");
        int x = in.nextInt();
        weishu(randomSum,x);
    }
}
回顾: ①随机数返回的是double类型,且生成数据的范围为:[0.0,1.0) ②要生成区间[a,b]内一个随机数,公式:(int)(Math.random() * (b - a + 1) + a);

//未掌握好的知识点用橙色表示

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/850138.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号