Java语言基础----if~else 练习/switch~case练习

说明:1.凡是可以使用switch-case的结构,都可以转换成if-else。反之,不成立。
2.写分支结构时,当发现既能使用switch-case又能使用if-else时(并且,switch的取值不多的情况下),优先选择switch-case。因为执行效率高

if-else 练习1

我家狗狗5岁了,5岁相当于人类年龄多大呢?其实,狗的前两年每一年相当于人类的10.5岁,之后每增加一年,增加4岁。那么5岁的狗狗相当于人类年龄的多少呢?

import java.util.Scanner;

class DagTest{
	public static void main (String[] args){
		Scanner scan = new Scanner(System.in);
		System.out.println("请输入狗狗的年龄");
		
		double age = scan.nextDouble();
		if(age>=0 && age <= 2){
			age = age*10.5;
		}else(age > 2){
			age = (2*10.5)+(age-2)*4;
		}else{
			System.out.println("请输入正确的狗狗年龄“);
		}
		System.out.println("狗狗的年龄相当于人类"+age);
	}
}

**

switch…case练习1

**
从键盘上输入“year”,“month”和“day”,要判断这一天是这一年的第几天
注:判断一年是否是闰年的标准:
1)可以被4整除,但不能被100整除
或者
2)可以被400整除


import java.util.Scanner;
class CaseTest{
	public static void main(String[] args){
						
			Scanner scan = new Scanner(System.in);
			System.out.println("请输入year");
			int year = scan.nextInt();
			
			System.out.println("请输入month");
			int month = scan.nextInt();
			
			System.out.println("请输入day");
			int day = scan.nextInt();
			
			//定义接收天数的变量
			int dayNum = 0;
			switch(month){
				case 12:
					dayNum+=30;
				case 11:
					dayNum+=31;
				case 10: 
					dayNum+=30;
				case 9: 
					dayNum+=31;
				case 8:
					dayNum+=31;
				case 7: 
					dayNum+=30;
				case 6: 
					dayNum+=31;
				case 5:
					dayNum+=30;
				case 4: 
					dayNum+=31;
				case 3: 
					//判断year是否是闰年
					if((year%4 == 0 && year%100 != 0) || year % 400==0){
						dayNum +=29;
					}else{
						dayNum +=28;
					}
				case 2:
					dayNum+=31;
				case 1: 
					dayNum+=day;
			}
		 System.out.println(year+"年"+mouth+"月"+day+"是当年的第"+dayNum+"天");			
	}
}

你可能感兴趣的:(java基础)