稳稳当当学java之条件语句(4)

条件语句

1.作业回顾

1,将分钟数转换为小时和分钟。(1000分钟是多少小时,剩下多少分钟)

public class Day061 {	
	public static void main(String[] args) {
//		1,将分钟数转换为小时和分钟。(1000分钟是多少小时,剩下多少分钟)
//		int num1 = 1000 / 60;
//		int num2 = 1000 % 60;
//		System.out.println("1000分钟有"+num1+"小时,剩下"+num2+"分钟"); //1000分钟有16小时,剩下40分钟
		
		int minutes = 1000; //总分钟数
		int h = 0; //小时数
		int m = 0; //分钟数
		h = minutes / 60; //结果是int,没有小数
		System.out.println(h); //16 
		m = minutes % 60; //剩下多少分钟
		System.out.println(m); //40
	}
}

2,根据半径计算圆的周长和面积(半径 是5的圆,输出周长和面积)

public class Day062 {
	public static void main(String[] args) {
		//2,根据半径计算圆的周长和面积(半径是5的圆,输出周长和面积)
		int r = 5;
		//Math.PI是Math类中的一个常量,3.14159265358979323846
		final double PI = Math.PI;
		double perimeter = 2 * PI * r;
		System.out.println(perimeter); //31.41592653589793
		
		double area = PI * r * r;
		System.out.println(area); //78.53981633974483
		
		//Math.round() 四舍五入,得到一个最接近long值
		System.out.println(Math.round(31.4)); //31
		System.out.println(Math.round(31.5)); //32
		
		//保留1位小数
		System.out.println((double)Math.round(perimeter * 10)); //314.0
		//将周长扩大10倍,进行round,然后将结果强制类型转换为double,最后再除10
		System.out.println((double)Math.round(perimeter * 10) / 10); //31.4
		//保留2位小数
		System.out.println((double)Math.round(perimeter * 100) / 100); //31.42
		System.out.println((double)Math.round(area * 100) / 100); //78.54
	}
}

3,找出两个数中的最大值(int a = 3, int b = 4,输出最大值)

public class Day063 {
	public static void main(String[] args) {
		//3,找出2个数中的最大值(int a = 3, int b = 4,输出最大值)
		int a = 3;
		int b = 4;
		int max = a > b ? a : b;
		System.out.println(max); //4
		
		//找出3个数中的最大值(int c = 3, int d = 4,int d = 5,输出最大值)
		int c = 3;
		int d = 4;
		int e = 5;
		int maxvalue = c > d ? (c > e ? c : e) : (d > e ? d : e);
		System.out.println(maxvalue);
	}
}

2.if语句

public class Day064 {
	public static void main(String[] args) {
		//if语句,当括号中的表达式为true时,会执行代码块,否则不执行
		if(true){
			System.out.println("这句话会输出");
		}
		
		if(2 > 1){
			System.out.println("2 > 1");
		}
		
		if(false){
			System.out.println("这句话不会输出");
		}
		
		if(2 < 1){
			System.out.println("2 < 1");
		}
		
		int x = 5;
		if(x == 5){
			System.out.println("x == 5");
		}
		
		x = 6;
		if(x == 5){
			System.out.println("x == 5");
		}	
	}
}
public class Day065 {
	public static void main(String[] args) {
		int y = 10;
		//if else 语句,当括号中的表达式结果为true时,执行if代码块,否则执行else代码块
		//if代码块和else代码块有且只有一个会执行
		if(y == 10){
			System.out.println("y == 10");
		}else{
			System.out.println("y != 10");
		}
		
		y = 11;
		if(y == 10){
			System.out.println("y == 10");
		}else{
			System.out.println("y != 10");
		}
	}
}
public class Day066 {
	public static void main(String[] args) {
		//只有满足条件的代码块会执行,其他的则会跳过,有且只有一个会执行
		//如果没有满足的条件,就会执行else代码块
		//当遇到满足的条件时,执行此代码块,后面的就不看了
		int z = 15;
		if(z == 10){
			System.out.println("z == 10");
		}else if(z == 12){
			System.out.println("z == 12");
		}else if(z == 15){
			System.out.println("z == 15");
		}else{
			System.out.println("z是其他数");
		}
	}
}
public class Day067 {
	public static void main(String[] args) {
		//如果满足条件,会执行代码块中的所有代码
		int x = 7;
		if(x == 7){
			System.out.println("今天是星期天");
			System.out.println("我喜欢星期天");
			System.out.println("星期天可以出去玩了");
		}
	}
}
public class Day068 {
	public static void main(String[] args) {
		//ctrl + /单行注释的快捷键
		//ctrl + shift +/多行注释,ctrl + shift + \取消多行注释
		
		//如果if语句不带块,那么只有后面的第一条语句属于if
		int number = 5;
		if(number < 0)
			number = number + 10; //属于if,不执行
			number++; //不属于if,会执行
		System.out.println(number); //6,不属于if,会执行
		//尽量使用带块的if
	}
}
public class Day069 {
	public static void main(String[] args) {
		//嵌套的if
		int a = 70; //考试成绩
		if(a >= 0 && a <= 100){
			if(a > 60){
				if(a >= 90){
					System.out.println("优秀");
				}else if(a >= 80){
					System.out.println("良好");
				}else{ // a < 80 && a >= 60
					System.out.println("一般");
				}
			}else {
				System.out.println("不及格");
			}
		}
		else{
			System.out.println("数字有误");
		}	
	}
}

3.switch语句

switch语句会在几个选项中做出选择

public class Day0610 {
	public static void main(String[] args) {
		// int number = 2;
		// if(number == 1){
		// System.out.println("1");
		// }else if(number == 2){
		// System.out.println("2");
		// }else if(number == 3){
		// System.out.println("3");
		// }else if(number == 4){
		// System.out.println("4");
		// }else if(number == 5){
		// System.out.println("5");
		// }else{
		// System.out.println("number不是12345");
		// }

		// switch会在几个选项中做选择
		int number = 2;
		switch (number) {
		case 1: //如果number是1,执行下面代码,break是终止,后面的case和default都不看了
			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;
		default: //如果上面的case都没有匹配成功,那么default会得到执行
			System.out.println("number不是12345");
		}
		System.out.println("switch结束了");
		
		//switch语句只能使用char,byte,short,int,String和枚举
//		long lg = 15;
//		switch(lg){ //编译错误
//		
//		}
//		
		
		//case值必须是一个编译时的常量
		number = 10;		
		switch(number){
//		case number > 5: System.out.println("大于五"); //编译错误,不能使用表达式
		}
		
		int x = 5;
		switch(x){
//		case x: System.out.println(x); //编译错误,不能使用变量
		}
		
		final int n = 6;
		switch(n){
		case n: System.out.println(n); //正确,n是编译时的常量
		}
	}
}

4.练习

1,从键盘输入一个分数,如果60分以上,就打印及格,否则就打印不及格。

public class Day0611 {
	public static void main(String[] args) {
		//1,从键盘输入一个分数,如果60分以上,就打印及格,否则就打印不及格。
		//java.util.Scanner是一个类,它是一个扫描器
		//System.in代表标准输入流,就是从控制台来获取输入
		//new是一个操作符,用来创建一个扫描器对象
		//s代表了刚创建的扫描器
		java.util.Scanner s = new java.util.Scanner(System.in);
		int score = s.nextInt(); //会等待键盘输入一个int数据,将输入结果赋值给score
		if(score >= 60) {
			System.out.println("及格");
		}else {
			System.out.println("不及格");
		}
//		int c = s.nextInt();
//		System.out.println(c);
		s.close(); //关闭扫描器
	}
}

2,编写程序,从键盘获取三个整数,分别存入变量num1,num2,num3中,从小到大输出。

import java.util.Scanner;

public class Day0612 {
	public static void main(String[] args) {
		//2,编写程序,从键盘获取三个整数,分别存入变量num1,num2,num3中,从小到大输出。
		//ctrl + shift +o导入类
		Scanner s = new Scanner(System.in);
		System.out.println("请输入num1");
		int num1 = s.nextInt();
		System.out.println("请输入num2");
		int num2 = s.nextInt();
		System.out.println("请输入num3");
		int num3 = s.nextInt();
		
		//将最小的数放入num1,最大的数放入num3中
		int temp; //临时变量
		if(num1 > num2){
			temp = num1;
			num1 = num2;
			num2 = temp;
		} //num1 < num2
		
		if(num1 > num3){
			temp = num1;
			num1 = num3;
			num3 = temp;
		} //num1 < num3
		
		if(num2 > num3){
			temp = num2;
			num2 = num3;
			num3 = temp;
		} //num2 < num3
		
		System.out.println(num1);
		System.out.println(num2);
		System.out.println(num3);
	}
}

3,男大当婚,女大当嫁。如果女方家长要嫁女儿,当然要提出一定的条件。高:180cm以上;富:财富1千万以 上;帅:是。如果这三个条件同时满足,则:输出我一定要嫁给他,如果三个条件中有为真的情况,则:嫁吧,比上 不足,比下有余,如果三个条件都不满足,则:不嫁。

4,编写程序,从键盘接受整数,如果为1-7,打印对应的星期值,否则,打印非法数字。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

十年之伴

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值