Java基础练习题(逻辑控制语句)

 /**/注释符

import java.util.Scanner;

public class T1 {

	public static void main(String[] args) {	
		
		/*1
		月度考试如果机试成绩大于等于90分并且理论成绩大于90分,
		或者上机成绩和理论成绩的平均分大于等于80分,
		并且综合积分不低于90分也能考试通关。
		要求:
		1、在控制台输入学生的机试成绩、理论成绩、综合积分
		2、如果考试通关提示“恭喜你考试通关”
		*/		
		Scanner f = new Scanner(System.in);
		System.out.println("请输入机试成绩");
		int a = f.nextInt();
		System.out.println("请输入理论成绩");
		int b = f.nextInt();
		int c = a+b;
		System.out.println("综合成绩:"+c);
		boolean condition1 = a>=90 && b>=90;
		boolean condition2 = (a+b)/2>=80 && (a+b)>=90;
		
		if(a>0 && b>0){
			if(condition1 || condition2){
				System.out.println("考试通过");
			}else{
				System.out.println("考试不通过");
			}
		}else{
			System.out.println("考试不通过");
		}
				
		
		/**2
		用户购买商品,指定购买数目,如果库存不足提示“抱歉,没有足够的库存”,
        否则提示“购买成功”库存数目减少相应数目。无论购买成功与否最后都输出库存数
		参考解决方案:
		1、用户从控制台输入要购买的商品数目
		2、定义整型变量表示库存数目
		3、使用if-else双分支结构,判断库存数据是否够
		*/
		
		System.out.println("请输入购买数目");
		int n = new Scanner(System.in).nextInt();
		int kucun = 100;
		int shengyu = 0;
		if(n<0){
			System.out.println("您输入的数据有误");
		}else if(n>kucun && n>0){			
			System.out.println("抱歉,没有足够的库存,购买失败");
		}else{
			shengyu = kucun - n;
			System.out.println("购买成功,库存剩余:" + shengyu);
		}
		System.out.println("购买完成");
		
		
		/*3
		缴税=全月应纳税所得额*税率-速算扣除数
		扣除标准:个税按3500元/月的起征标准算
		例:某人的工资收入为5000元
		他应纳个人所得税为:
		(5000-3500)×0.03-0=45(元)
		参考解决方案:
		用户输入工资
		根据工资计算出全月应纳税所得额
		使用多重if判断全月应纳税所得额的范围,
		确定税率和速算扣除数
		使用公式计算缴税数额
		缴税=全月应纳税所得额*税率-速算扣除数
		*/
        
		double salary = 0;//工资				
		double shui = 0;//缴税				
		System.out.println("请输入工资");
		salary = new Scanner(System.in).nextInt();				
		if (salary<5000){//3500
			shui = 0;
		}else if(salary>=5000){//1500
			shui = (salary-3500)*0.03-0;
		}else if(salary>5000 && salary<8000){//4500
			shui = (salary-3500)*0.10-105;
		}else if(salary>=8000 && salary<12500){//9000
			shui = (salary-3500)*0.2-555;
		}else if(salary>12500 && salary<38500){//35000
			shui = (salary-3500)*0.25-1005;
		}else if(salary>=38500 && salary<58500){//55000
			shui = (salary-3500)*0.30-2755;
		}else if(salary>58500 && salary<83500){//80000
			shui = (salary-3500)*0.35-5505;
		}else if(salary>=83500){//80000
			shui = (salary-3500)*0.45-13505;
		}				
		System.out.println("应缴税:"+ shui +"元");
		System.out.println("税前工资:"+salary+"元");
		double totle = salary -shui;
		System.out.println("税后工资:"+totle+"元");
		
		
		/**4
		实训前最后一个月考试结束,
		所有考试通过的学生会按照学号分到实训1班和实训2班,
		学号为奇数的进入实训1班,学号为偶数的进入实训2班,
		考试通不过的学生则提示不能升入实训。
		思路分析:
		要求学生输入考试机试成绩、理论成绩和学号。
		首先判断考试是否通过
		考试通过后的if分支中,再判断学号是奇数还是偶数,
		奇数进入实训1班,偶数进入实训2班
        */
		
		Scanner f = new Scanner(System.in);
		System.out.println("请输入机试成绩");
		int a = f.nextInt();
		System.out.println("请输入理论成绩");
		int b = f.nextInt();
		int c = a+b;
		System.out.println("综合成绩:"+c);		
		
		boolean condition1 = a>=90 && b>=90;
		boolean condition2 = (a+b)/2>=80 && (a+b)>=90;
		
		if(a>0 && b>0){
			if(condition1 || condition2){
				if(c%2==0){
					System.out.println("考试通过,进入实训2班");
				}else{
					System.out.println("考试通过,进入实训1班");
				}				
			}else{
				System.out.println("考试不通过");
			}
		}else{
			System.out.println("考试不通过");
		}
		
		
		/*5
		将数字0,1,2,3,4,5,6使用程序将其转换为汉字星期一、
		星期二、……星期日输出,如果输入其他数字提示“输入错误”
		*/
        
		System.out.println("请输入一个数字(0-6)");
		int s = new Scanner(System.in).nextInt();
		
		switch(s){
			case 0:
				System.out.println("星期一");
				break;
			case 1:
				System.out.println("星期二");
				break;
			case 2:
				System.out.println("星期三");
				break;
			case 3:
				System.out.println("星期四");
				break;
			case 4:
				System.out.println("星期五");
				break;
			case 5:
				System.out.println("星期六");
				break;
			case 6:
				System.out.println("星期日");
				break;
			default:
				System.out.println("请输入正确的数字");
		}
		
		
		/**6
		通过键盘录入考试成绩,判断该考试成绩为什么等级
		90-100之间为优秀,80-89之间为优良,70-79之间为良好,
		60-69之间为及格,60分以下为不及格
		*/
					
		System.out.println("请输入考试成绩:");
		int fen = new Scanner(System.in).nextInt();				
		if(fen>=90 && fen<=100){//4500
			System.out.println("优秀");;
		}else if(fen>=80 && fen<=89){//9000
			System.out.println("优良");
		}else if(fen>=70 && fen<=79){//35000
			System.out.println("良好");
		}else if(fen>=60 && fen<=69){//55000
			System.out.println("及格");
		}else if(fen<60){//80000
			System.out.println("不及格");
		}
        
		
		/*7
		做一个登陆效果,输入用户名和密码,如果用户名是:张三,
		密码是:123就提示登陆成功,否则提示登录失败
        */
		
		System.out.println("请输入用户名:");
		String user = new Scanner(System.in).next();
		System.out.println("请输入密码:");
		int password = new Scanner(System.in).nextInt();
		
		if("张三".equals(user) && password == 123){
			System.out.println("登陆成功");
		}else{
			System.out.println("登录失败");
		}
		
		
		/**8
		键盘录入2个数字,再录入一个符号(+ - * %)。
		判断符号是加减乘除哪一个,如果是+就输出2数之和,
		如果是减就输出2数之差,如果是乘就输出两个数之积,
		如果是除,就求两个数之商(注意:要判断除数是不是0,
		如果为0,要报出提示信息(“0不能作为除数”))
		*/
        
		int d = 0;
		System.out.println("请输入一个数字");
		int a = new Scanner(System.in).nextInt();
		System.out.println("请再输入一个数字");
		int b = new Scanner(System.in).nextInt();
		System.out.println("请输入一个运算符号");
		String c = new Scanner(System.in).next();		
		
		if("+".equals(c)){
			d = a + b;
			System.out.println("两数之和为:" + d);
		}else if("-".equals(c)){
			d = a - b;
			System.out.println("两数之差为:" + d);
		}else if("*".equals(c)){
			d = a * b;
			System.out.println("两数之积为:" + d);
		}else if("/".equals(c)){		
			if(a==0||b==0){
				System.out.println("0不能作为除数");
			}else{
				d = a / b;
			System.out.println("两数之商为:" + d);
			}			
		}else{
			System.out.println("输入错误");
		}
		System.out.println("结束");
		
		
		/*9
		输入月份,打印输出该月有多少天
		*/
        
		System.out.println("请输入月份");
		int m = new Scanner(System.in).nextInt();
		
		switch(m){
		case 1:case 3:case 5:case 7:case 8:case 10:case 12:
			System.out.println("31天");
			break;
		case 2:
			System.out.println("28天");
			break;
		case 4:case 6:case 9:case 11:
			System.out.println("30天");
			break;
		default:
			System.out.println("请输入正确的月份");
		}
		
		
		/**10
		输入星期,打印出该星期是休息日还是工作日
		*/
        
		System.out.println("请输入星期");
		String d = new Scanner(System.in).next();
		
		switch(d){
		case "星期一":case "星期二":case "星期三":case "星期四":case "星期五":
			System.out.println("工作日");
			break;
		case "星期六":case "星期日":
			System.out.println("休息日");
			break;
		default:
			System.out.println("请输入正确的星期");
		}
		
		
		/*11
		编程输入整数a和b,若a或b大于100,
		则输出a,b的和与100的差,否则输出两数之和
		*/
        
		System.out.println("请输入a");
		int a = new Scanner(System.in).nextInt();
		System.out.println("请输入b");
		int b = new Scanner(System.in).nextInt();
		int c = 0;
		
		if(a>100||b>100){
			c = a - b;
			
		}else{
			c = a + b;
			
		}
		System.out.println(c);
		
		
		/**12
		输入员工登记A、B、C级,判断其加薪数量,
		加薪数量对应为500、300、100(switch语句)。
		录入其他级别,输出“其他级别输入错误”提示信息
		*/
        
		System.out.println("请输入员工等级");
		String L = new Scanner(System.in).next();
		switch(L){
		case "A":
			System.out.println("加薪500元");
			break;
		case "B":
			System.out.println("加薪300元");
			break;
		case "C":
			System.out.println("加薪100元");
			break;
		default:
			System.out.println("请输入正确的等级");
		}
		
		
		/*13
		随意输入一个数字1-7,判断是周几,
		除此以外的输入被认为不合法,输出“无效输入”提示信息。
		(switch语句写)
		*/
        
		System.out.println("请输入数字1-7");
		int s = new Scanner(System.in).nextInt();
		switch(s){
		case 1:
			System.out.println("周一");		
			break;
		case 2:
			System.out.println("星期二");
			break;
		case 3:
			System.out.println("星期三");
			break;
		case 4:
			System.out.println("星期四");
			break;
		case 5:
			System.out.println("星期五");
			break;
		case 6:
			System.out.println("星期六");
			break;
		case 7:
			System.out.println("星期日");
			break;
		default:
			System.out.println("无效输入");
		}
		
		
		/**14
		输入月份,打印出该月份是什么季节
		*/
        
		System.out.println("请输入月份");
		int m = new Scanner(System.in).nextInt();
		
		switch(m){
		case 1:case 2:case 3:
			System.out.println("春季");
			break;
		case 4:case 5:case 6:
			System.out.println("夏季");
			break;
		case 7:case 8:case 9:
			System.out.println("秋季");
			break;
		case 10:case 11:case 12:
			System.out.println("冬季");
			break;
		default:
			System.out.println("请输入正确的月份");
		}
		
		
		/*15
		(1) 做一个登陆效果,输入用户名和密码,如果用户名是:张三,
		密码是:123就提示登陆成功,否则提示登录失败.
		评分标准:
		(1) 控制台录入名字及密码信息(10分)
		(2) 判断用户名和密码的长度必须是6位(10分)
		(3) 输出正确的提示(10分)
		(4) 添加注释(10分)
		*/
        
		System.out.println("请输入用户名:");
		String user = new Scanner(System.in).next();//输入用户名
		System.out.println("请输入密码:");
		int password = new Scanner(System.in).nextInt();//输入密码
		
		if("张三".equals(user) && password == 123){
			System.out.println("登陆成功");
		}else{
			System.out.println("登录失败");
		}
		
		
		/**16
		输入员工等级A、B、C级,判断其加薪数量,
		加薪数量对应为500、300、100(switch语句)。
		录入其他级别,输出“其他级别输入错误”提示信息。
		1. 评分标准:
		(1) 正确实现输入(10分)
		(2) 正确使用switch语句判断(10分)
		(3) 正确输入其它级别(10分)
		(4) 正确输出结果(10分)
		(5) 代码注释(5分)
		*/
        
		System.out.println("请输入员工等级");
		String L = new Scanner(System.in).next();//输入等级
		switch(L){
		case "A":
			System.out.println("加薪500元");
			break;
		case "B":
			System.out.println("加薪300元");
			break;
		case "C":
			System.out.println("加薪100元");
			break;
		default:
			System.out.println("请输入正确的等级");
		}
		

	}

}

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值