案例11:成年人的心率的正常范围是每分钟60~100次。体检时,如果心率不在此范围内,则需要进一步做检查。
int heartBeats = 190;
if (heartBeats > 60 && heartBeats < 100) {
System.out.println("The heart rate is within the normal range");
}
else {
System.out.println("Please do further checking");
}
案例12:定义一个整数,判断是偶数还是奇数
int num = 32;
if (num % 2 == 0) {
System.out.println("This is an even number");
}
else {
System.out.println("This is an odd number");
}
案例13:岳小鹏参加Java考试,如果成绩为100分,奖励一辆跑车;(80,90]时,奖励一辆山地自行车;(60,80]时奖励环球影城一日游,其他的,无奖励
int score = 98;
if (score == 100) {
System.out.println("reward a roadster");
} else if (score > 80 && score <= 99) {
System.out.println("reward a Mountain bike");
} else if (score > 60 && score <= 80) {
System.out.println("reward a day trip to Universal studios");
} else {
System.out.println("reward nothing");
}
案例14
int x = 4;
int y = 1;
if (x > 2) {
if (y > 2)
System.out.println(x + y);
System.out.println("atguigu"); //输出的是这句话
} else
System.out.println("x is " + x);
boolean b = true; //如果写成 if(b=false)能编译通过吗?如果能,结果是c
if (b == false) //建议:if(!b)
System.out.println("a");
else if (b)
System.out.println("b"); //输出这句
else if (!b)
System.out.println("c");
else
System.out.println("d");
案例15:defined two integer number num1 and num2. if the fist integer num1"small" is bigger than the //the second integer num2 "big", changing them and showing the value of "small" and "big".
int small = 10;
int big = 9;
int temp = 0;
if (small > big) {
temp = small;
small = big;
big = temp;
System.out.println("the value of the small is " + small);
System.out.println("the value of the big is " + big);
}
Test 16 Specify a month and output the season corresponding to that month.
Scanner input = new Scanner(System.in);
System.out.print("请输入月份:");
int month = input.nextInt();
switch (month) {
case 1:
case 2:
case 12:
System.out.println("winter");
break;
case 3:
case 4:
case 5:
System.out.println("spring");
break;
case 6:
case 7:
case 8:
System.out.println("summer");
break;
case 9:
case 10:
case 11:
System.out.println("autumn");
break;
}
Test17:押宝游戏随机产生 3个 1-6的整数,如果三个数相等,那么称为“豹子”,
// 如果三个数之和大于9,称为“大”,如果三个数之和小于等于 9,称为“小”,
// 用户从键盘输入押的是“豹子”、“大”、“小”,并判断是否猜对了
知识拓展:1. Math 类的 random()的调用,会返回一个[0,1)范围的一个 double 型值
2. Math.random() * 100 ---> [0,100) (int)(Math.random() * 100) ---> [0,99]
(int)(Math.random() * 100) + 5 ----> [5,104]
3、如何获取[a,b]范围内的随机整数呢?(int)(Math.random() * (b - a + 1))+a
//step1 :generate the random number
int a1 = 1;
int b1 = 6;
int m1 = (int) (Math.random() * (b1 - a1 + 1) + a1);
int m2 = (int) (Math.random() * (b1 - a1 + 1) + a1);
int m3 = (int) (Math.random() * (b1 - a1 + 1) + a1);
//押宝
Scanner input1 = new Scanner(System.in);
System.out.print("请输入押的是:");
String number = input1.next();
//判断结果
boolean result=false;
switch (number){
case "豹子":
result=m1==m2&&m2==m3;
break;
case "大":
result=m1+m2+m3>9;
break;
case "小":
result=m1+m2+m3<=9;
break;
default:
System.out.println("输入有误!");
}
System.out.println("a, b, c 分别是:"+m1+","+m2+","+m3);
System.out.println(result?"猜中了":"猜错了");
Test 18:将下面if语句改成switch-case
int a=3;
int x1=100;
if(a==1)
x1+=5;
else if(a==2)
x1+=10;
else if(a==3)
x1+=16;
else
x1+=34;
System.out.println("x1的值是:"+x1);
int a2=3;
int x2=100;
switch (a2){
case 1:
x2+=5;
break;
case 2:
x2+=10;
break;
case 3:
x2+=16;
break;
default:
x2+=34;
}
System.out.println("x2的值是:"+x2);
Test19: 输入两个正整数m和n,求其最大公约数和最小公倍数。
Scanner input2=new Scanner(System.in);
System.out.println("输入两个正整数:");
int num1=input2.nextInt();
int num2=input2.nextInt();
System.out.println("num1="+num1+",num2="+num2);
//取出两个数的最小值
int min=(num1<num2)?num1:num2;
//求两个数最大公约数
for (int i=min;i>=1;i--){
if(num1%i==0&&num2%i==0){
System.out.println("最大公约数是:"+i);
break;//找到第一个数就跳出循环
}
}
//取出两个数的最大数
int max=(num1>num2)?num1:num2;
//求两个数最小公倍数
for (int i=max;i<=num1*num2;i++){
if(i%num1==0&&i%num2==0){
System.out.println("最小公倍数是:"+i);
break;//找到第一个数就跳出循环
}
}