首页
技术小册
AIGC
面试刷题
技术文章
MAGENTO
云计算
视频课程
源码下载
PDF书籍
「涨薪秘籍」
登录
注册
第一章:概述
第二章:顺序结构
第三章:分支结构
第四章:分支结构练习
第五章:循环结构
当前位置:
首页>>
技术小册>>
Java语言基础3-流程控制
小册名称:Java语言基础3-流程控制
3.6.1 练习1 ● 岳小鹏参加 Java 考试,他和父亲岳不群达成承诺: ![](/uploads/images/20230724/596f748043c73b6ece425113486d1730.png) ● 请从键盘输入岳小鹏的期末成绩,并加以判断。 ● 示例: ```bash import java.util.Scanner; /** * @author maxiaoke.com * @version 1.0 */ public class BranchStructureExercise1 { public static void main(String[] args) { // ① 用户输入成绩 Scanner input = new Scanner(System.in); System.out.print("请输入岳小鹏的期末成绩:"); double score = input.nextDouble(); // ② 按照100、(80,99]、[60,80]的顺序检查输入的成绩数据,在各个分支内打印对应的奖励 if (score == 100) { System.out.println("BMW"); } else if (score > 80 && score <= 99) { System.out.println("iphone xs max"); } else if (score >= 60 && score <= 80) { System.out.println("ipad"); } else { System.out.println("其他"); } } } ``` 3.6.2 练习2 ● 由键盘输入三个整数分别存入变量 num1 、num2 、num3 ,对它们进行排序,并且从小到大输出。 ● 示例: ```bash import java.util.Scanner; /** * @author maxiaoke.com * @version 1.0 */ public class BranchStructureExercise2 { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.print("请输入num1的值:"); int num1 = input.nextInt(); System.out.print("请输入num2的值:"); int num2 = input.nextInt(); System.out.print("请输入num3的值:"); int num3 = input.nextInt(); int temp = 0; if (num1 >= num2) { // 交换 num1 和 num2的值 temp = num1; num1 = num2; num2 = temp; } if (num2 >= num3) { // 交换 num2 和 num3的值,这样num3的值最大 temp = num2; num2 = num3; num3 = temp; // 如果 num2 和 num3进行了交换,就再比较一下num1和num2(新的) if (num1 >= num2) { // 比较 num1 和 num2的值,这样就能决定num1和num2谁大 temp = num2; num2 = num1; num1 = temp; } } System.out.println(num1 + "<" + num2 + "<" + num3); } } ``` 3.6.3 练习3 ● 下面的代码,如果有输出,指出输出的结果。 ```bash /** * @author maxiaoke.com * @version 1.0 */ public class BranchStructureExercise3 { public static void main(String[] args) { int x = 4; int y = 1; if (x > 2) { if (y > 2) System.out.println(x + y); System.out.println("maxiaoke.com"); } else System.out.println("x is " + x); } } ``` 注意:实际开发中,强烈建议不要这么写。 ● 输出结果: ```bash maxiaoke.com ``` 3.6.4 练习4 编写程序,声明 2 个 int 型变量并赋值。判断两数之和,如果大于等于 50 ,打印 " hello world! " 。 示例: ```bash /** * @author maxiaoke.com * @version 1.0 */ public class BranchStructureExercise4 { public static void main(String[] args) { int i = 20; int j = 30; if ((i + j) >= 50) { System.out.println("Hello World!"); } } } ``` 3.6.5 练习5 ● 编写程序,声明 2 个 double 型变量并赋值。判断第一个数大于 10.0 ,且第 2 个数小于 20.0 ,打印两数之和。否则,打印两数的乘积。 ● 示例: ```bash /** * @author maxiaoke.com * @version 1.0 */ public class BranchStructureExercise5 { public static void main(String[] args) { double a = 11.5; double b = 19.8; if (a >= 10.0 && b < 20.0) { System.out.println(a + b); } else { System.out.println(a * b); } } } ``` 3.6.6 练习6 ● 我家的狗 5 岁了,5 岁的狗相当于人类多大呢?其实,狗的前两年每一年相当于人类的 10.5 岁,之后每增加一年就增加四岁。那么 5 岁的狗相当于人类多少年龄呢?应该是:10.5 + 10.5 + 4 + 4 + 4 = 33 岁。 ● 编写一个程序,获取用户输入的狗的年龄,通过程序显示其相当于人类的年龄。如果用户输入负数,请显示一个提示信息。 ● 示例: ```bash import java.util.Scanner; /** * @author maxiaoke.com * @version 1.0 */ public class BranchStructureExercise6 { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.print("请输入狗的年龄:"); int age = input.nextInt(); if (age <= 0) { System.out.println("年龄不能为负数或0"); } else if (age <= 2) { System.out.println("狗的年龄相当于:" + age * 10.5); } else { // 前两年 double towYearAge = 10.5 * 2; // 比2大的 double moreYearAge = (age - 2) * 4; // 总的年龄 double totalAge = towYearAge + moreYearAge; System.out.println("狗的年龄相当于:" + totalAge); } } } ``` 3.6.7 练习7 ● 假设你想开发一个玩彩票的游戏,程序随机地产生一个两位数的彩票中奖号码,提示用户输入一个两位数,然后按照下面的规则判定用户是否能赢。 ● ① 如果用户输入的数匹配彩票的实际顺序,奖金 10 000 美元。 ● ② 如果用户输入的所有数字匹配彩票的所有数字,但顺序不一致,奖金 3 000 美元。 ● ③ 如果用户输入的一个数字仅满足顺序情况下匹配彩票的一个数字,奖金 1 000 美元。 ● ④ 如果用户输入的一个数字仅满足非顺序情况下匹配彩票的一个数字,奖金 500 美元。 ● ⑤ 如果用户输入的数字没有匹配任何一个数字,则彩票作废。 ● 示例: ```bash import java.util.Random; import java.util.Scanner; /** * @author maxiaoke.com * @version 1.0 */ public class BranchStructureExercise7 { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.print("请输入两位数(01~99):"); int number = input.nextInt(); Random random = new Random(); int prizeNumber = random.nextInt(100); int gePrize = prizeNumber % 10; int shiPrize = prizeNumber / 10; if (number <= 0 || number > 100) { System.out.println("用户输入号码不合法"); } else { System.out.println("用户输入号码:" + number); System.out.println("彩票中奖号码:" + prizeNumber); int ge = number % 10; int shi = number / 10; if (number == prizeNumber) { System.out.println("奖金10 000美元"); } else if (gePrize == shi && shiPrize == ge) { System.out.println("奖金 3 000美元"); } else if (gePrize == ge || shiPrize == shi) { System.out.println("奖金1 000美元"); } else if (gePrize == shi || shiPrize == ge) { System.out.println("奖金500美元"); } else { System.out.println("没有中奖"); } } } } ```
上一篇:
第三章:分支结构
下一篇:
第五章:循环结构
该分类下的相关小册推荐:
Java并发编程实战
SpringBoot合辑-初级篇
深入拆解 Java 虚拟机
Java并发编程
Java语言基础9-常用API和常见算法
深入理解Java虚拟机
Java语言基础7-Java中的异常
Java必知必会-Maven高级
Java语言基础14-枚举和注解
Mybatis合辑3-Mybatis动态SQL
Java语言基础11-Java中的泛型
Java语言基础8-Java多线程