Java,经典例题

文章目录

1.超市换购系统
  • 用户输入消费金额
  • 输入完成后询问是否参加换购活动
  • 输入是
  • 弹出5个优惠活动显示供用户选择
  • 假设选择4
  • 输出消费总金额
  • 并显示成功换购的奖品
  • 输入否
  • 欢迎下次光临
  • 大概就是这样
	public static void main(String[] args) {
   
		Scanner sc = new Scanner(System.in);
		System.out.print("请输入您的消费金额:");
		double sMoney = sc.nextDouble();
		if (sMoney <= 0) {
   
			System.out.println("您的输入有误!!!");
		} else if (sMoney < 50) {
   
			System.out.println("换购活动需要消费满50元才能参加!谢谢您的光临!");
		} else if (sMoney >= 50) {
   
			System.out.println("您的消费金额已到达要求,是否参见换购活动");
			System.out.println("1.满50元,加2元换购百事可乐饮料1瓶");
			System.out.println("2.满100元,加3元换购500ml可乐饮料一瓶");
			System.out.println("3.满100元,加10元换购5公斤面粉");
			System.out.println("4.满200元,加10元换购一个苏泊尔炒菜锅");
			System.out.println("5.满100元,加20元换购欧莱雅爽肤水一瓶");
			System.out.println("0.不换购");
			System.out.print("请输入您的选择:");
			int a = sc.nextInt();
			if (a > 5 || a < 0) {
   
				System.err.print("您的输入有误!如有换购需求请重新开始");
			} else {
   
				if (a == 5 && sMoney >= 200) {
   
					System.out.println("换够成功了:欧莱雅爽肤水一瓶");
					System.out.println("本次消费总金额为:" + (sMoney + 20.0));
				} else if (a == 4 && sMoney >= 200) {
   
					System.out.println("换够成功了:1个苏泊尔炒菜锅");
					System.out.println("本次消费总金额为:" + (sMoney + 10.0));
				} else if (a == 3 && sMoney >= 100) {
   
					System.out.println("换够成功了:5公斤面粉");
					System.out.println("本次消费总金额为:" + (sMoney + 10.0));
				} else if (a == 2 && sMoney >= 100) {
   
					System.out.println("换够成功了:500ml可乐饮料一瓶");
					System.out.println("本次消费总金额为:" + (sMoney + 3.0));
				} else if (a == 1 && sMoney >= 50) {
   
					System.out.println("换够成功了:百事可乐饮料1瓶");
					System.out.println("本次消费总金额为:" + (sMoney + 2.0));
				} else if (a == 0) {
   
					System.out.println("欢迎下次光临!!!!");
				} else {
   
					System.out.println("您没有达到相应的消费额度,如有换购需求请重新开始");
				}

			}
		}

	}
2.输入一个年判断是否是闰年
  • 普通年能被4整除且不能被100整除的为闰年。(如2004年就是闰年,1900年不是闰年)
  • 世纪年能被400整除的是闰年。(如2000年是闰年,1900年不是闰年)
   public static void main(String [] args)
   	{
   
   		Scanner sc = new Scanner(System.in);
   		System.out.print("请输入一个年份:");
   		int yearNum = sc.nextInt();  
   		if (yearNum%4==0 && yearNum%100!=0)
   		{
   
   				System.out.println("是普通润年");
   			
   		}
   		else
   		{
   
   			if (yearNum%400==0)
   			{
   
   				System.out.println("是世纪润年");
   			}
   			else
   			{
   
   			System.out.println("不是润年");
   			}
   		}
   	}
3.从键盘输入两个数和一个运算符,输出运算结果
	public static void main(String[] args) 
		{
   
			System.out.println("可输入的运算符为:+ (相加)\t-(相减)\t*(相乘)\t /(相除)\t %(取模)");
			Scanner sc = new Scanner(System.in);
			System.out.println("请先在输入运算符");
			String str = sc.nextLine();
			char ch = str.charAt(0);
			System.out.println("请输入一个数");
			double a = sc.nextDouble();
			System.out.println("请在输入一个数");
			double b = sc.nextDouble();
			switch (ch) {
   
			case '+':System.out.println(a+"+"+b+"="+(a+b));break;
			case '-':System.out.println(a+"-"+b+"="+(a-b)+"\n"+b+"-"+a+"="+(b-a));break;
			case '*':System.out.println(a+"*"+b+"="+(a*b));break;
			case '/':System.out.println(a+"/"+b+"="+(a/b)+"\n"+b+"/"+a+"="+(b/a));break;
			case '%':System.out.println(a+"%"+b+"="+(a%b)+"\n"+b+"%"+a+"="+(b%a));break;
			default:System.out.println("您的输入有误!请重新运行输入");break;
			}
			
		}
4.从键盘输入货物吨数、运输距离,求应付的运费。

每吨货物每公里运费P与运输距离S有关,路途越远,每公里运价越低。公式如下:
当 s<100 时 p=10
当 100<=s<150 时 p=8
当 150<=s<200 时 p=7
当 200<=s<300 时 p=6
当300<=s<500时 p=5.5
当 s>=500 时 p=5
如果所付的总运费超过5000元时,再给予九五折优惠

	public static void main(String[] args) 
		{
   
			double p = 0.0; 
			Scanner sc = new Scanner(System.in);
			System.out.print("请输入货物的重量单位为吨:");
			double weight = sc.nextDouble();
			System.out.print("请输入运输距离单位为km:");
			double distance = sc.nextDouble();
			if(distance<100)
			{
   
				p = 10;
			}
			else if (distance <150 && distance >=100)
			{
   
				p=8;
			}
			else if (distance <200 && distance >=150)
			{
   
				p=7;
			}
			else if (distance <300 && distance >=200)
			{
   
				p=6;
			}
			else if (distance <500 && distance >=300)
			{
   
				p=5.5;
			}
			else if (distance >=500)
			{
   
				p=5;
			}
			double price = weight*distance*p;
			if (price > 5000)
			{
   
				price = price * 0.95; 
				System.out.println("因为费用超过了五千所以我们给您在打个九五折优惠");
			}
			System.out.println("价格为:"+price);
5.计算正整数各位上的数之和
	public static void main(String[] args) {
   
		Scanner sc = new Scanner(System.in);
		System.out.print("请输入一个正整数:");
		int num = sc.nextInt();
		int a=0;
		int temp = 0;
		if(num >=0){
   
			for(int i =0; i<99999; i++) {
   
				int tempNum = num;
				tempNum= tempNum/10;
				a++;
				if (tempNum == 0) {
   
					break;
				}
			}
			for(int j=(a-1); j>=0; j--) {
   
				int c= (int)(Math.pow(10, j));
				int b = (num/c)%10;
				temp=temp + b;
			}
			System.out.println("各位数的和为:"+temp);
		}
		else {
   
			System.out.println("您的输入有误!!!!");
		}
	}

6.求1~100之间不能被3整除的数之和
	public static void main(String [] 
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值