Java基础语法之流程控制训练任务(非常全)

1 计算应缴金额

商场根据会员积分打折

2000分以内打9折

4000分以内打8折

6000分以内打7.5折

8000分以上打7折

提示用户输入总消费金额和积分 计算应缴金额

package day01_text1;

import java.util.Scanner;

public class demo03 {
/*
 * 计算应缴金额
*/
 public static void main(String[] args) {
	 Scanner input =new Scanner(System.in);
	  System.out.println("请输入购物金额");
	 double jinE = input.nextDouble();
	  System.out.println("请输入积分");
	  double jiFen=input.nextDouble();
	 if(jiFen<=2000) {
		 jinE=jinE*0.9;
	 }else if(jiFen<=4000) {
		 jinE=jinE*0.8;
	 }else if(jiFen<=8000) {
		 jinE=jinE*0.75;
	 }else{
		 jinE=jinE*0.7;
	 }
	 System.out.println("应缴金额为:"+jinE);
	 }
  }

代码执行截图

2 计算该年该月天数

一年中有12个月,而每个月的天数是不一样的,其中大月31天,分别为1,3,5,7,8,10,12月,小月30天,分别为4,6,9,11月,还有2月比较特殊,平年的2月只有28天,闰年的2月有29天,由用户输入年份和月份,计算该年该月的天数

package day01_text1;

import java.util.Scanner;

public class demo03 {
/*
 *一年中有12个月,而每个月的天数是不一样的
 *其中大月31天,分别为1,3,5,7,8,10,12月,小月30天,分别为4,6,9,11月
 *还有2月比较特殊,平年的2月只有28天,闰年的2月有29天
 *由用户输入年份和月份,计算该年该月的天数
*/
 public static void main(String[] args) {
	 Scanner input=new Scanner(System.in);
	 System.out.println("请输入年份");
	 int nianFen=input.nextInt();
	 System.out.println("请输入月份");
	 int yueFen=input.nextInt();
	 System.out.println("请输入日期");
	 int riQi=input.nextInt();
	 int sum=0;//用来记录到哪一天了
	 for(int i=1;i<yueFen;i++) {
		 switch(i) {
		 case 1:
		 case 3:
		 case 5:
		 case 7:
		 case 8:
		 case 10:
		 case 12:
	     sum+=31;
		 break;
		 case 4:
		 case 6:	 
		 case 9:
	     case 11:
	     sum+=30;
	     break;
	     case 2:
		 if(nianFen%4==0 && nianFen%100!=0 ||nianFen%400==0) {
			  sum+=29;
		 }else {
			sum+=28;
		 }
		 break;
	     }	
         }
	 sum=sum+riQi;
	 System.out.println("今天是"+nianFen+"年的第"+sum+"天");
     }
 }

代码执行截图

 3  分别打印等腰三角形,倒等腰三角形,直角三角形,倒直角三角形

package day01_text1;

public class demo8 {

	public static void main(String[] args) {
		//等腰三角形
     for(int i =0;i<4;i++){
	 for(int j =i+1;j<4;j++){
			 System.out.print(" ");
	 }for(int a=0;a<i*2+1;a++) {
		 System.out.print("*");
	 }
	 System.out.println();
     }	 
	System.out.println("================");
	
	//倒等腰三角形
	     for(int i=1;i<=4;i++) {
		 for(int j=1;j<=i-1;j++) {
			 System.out.print(" ");
		 }
		 for(int d=1;d<=(4-i)*2+1;d++) {
			 System.out.print("*");
		 }
		 System.out.println();
	     }
	 System.out.println("================");
	 
	//直角三角形
	     for(int i=0;i<4;i++) {
		 for(int j=0;j<i*2+1;j++) {
			 System.out.print("*");
		 }
		 System.out.println();
	     }
	 System.out.println("================");
	 
	//倒直角三角形
	for(int i=1;i<=4;i++) {
		for(int j=0;j<(4-i)*2+1;j++){
			System.out.print("*");
		}
		System.out.println();
	    }
	}
}

代码执行结果

4 打印菱形与空心菱形

package day01_text1;

public class demo8 {

	public static void main(String[] args) {
        //菱形 
		 for (int i = 1; i <=5; i++) {
		   for (int j = 1; j <=(5-i) ; j++) {
		    System.out.print(" ");
		   }
		   for (int j = 1; j <= (2*i-1); j++) {
		    System.out.print("*");
		   }
		   System.out.println();
		   }
		  for (int i = (5-1); i >0; i--) {
		   for (int j = 0; j < (5-i) ; j++) {
		    System.out.print(" ");
		   }
		   for (int j = 0; j < (2*i-1); j++) {
		    System.out.print("*");
		   }
		   System.out.println();
		   }
		  System.out.println("================");
		  
           /*打印空心菱形
		    * 以下打印的是空心菱形的上半部分
		   */
			   for(int i = 0;i < 5;i++){ //i表示空心菱形上半部分行数
			    for(int j = 0;j < (5-1-i);j++){//j控制每行"*"前面的空格数
			     System.out.print(" ");
			    }
			    for(int k = 0;k < (2*i+1);k++){ //k控制要打印的"*"的个数
			     if(i == 0){//如果是第一行则将"*"全部打印
			      System.out.print("*");
			     }else if(k == 0 || k == (2*i)){//如果要打印的"*"是第一个或最后一个则            //打印出来
			      System.out.print("*");
			     }else{//如果要打印的"*"不是第一个或最后一个则打印空格
			      System.out.print(" ");
			     }
			     }
			    System.out.println();
			     }
			 /* 以下是打印空心菱形的下半部分
			  * 空心菱形的下半部分的行数比上半部分少一行
			  * 比如上半部分是5行,下半部分为4行才能构成菱形
			  */
			   for(int a = 0;a < 4;a++){//下半行要比上半行少一行
			    for(int j = 0;j < (a+1);j++){//j控制每行"*"前面的空格数
			     System.out.print(" ");
			     }
			    for(int k = 0;k < 2*(4-a)-1;k++){ //k控制要打印的"*"的个数
			     if(a == 3){//如果是最后一行则将"*"全部打印
			      System.out.print("*");
			     }else if(k == 0||k == 2*(3-a)){//如果要打印的"*"是第一个或最后一个              //则打印出来
			      System.out.print("*");
			     }else{//如果要打印的"*"不是第一个或最后一个则打印空格
			      System.out.print(" ");
			     }
			     }
			    System.out.println();
		 }
	 } 
}

 代码执行结果

5 打印九九乘法表

package day01_text1;

public class demo03 {
/*
 *打印九九乘法表
*/
	public static void main(String[] args) {
		
		for(int i=1;i<=9;i++) {
		for(int j=1;j<=i;j++) {
			System.out.print(j+"*"+i+"="+i*j+"  ");
		}
		System.out.println();
		}
    }
}
  

 代码执行结果

 6 打印出所有的 "水仙花数 ",所谓 "水仙花数 "是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个 "水仙花数 ",因为153=1的三次方+5的三次方+3的三次方

package day01_text1;

public class demo03 {
/*
 *打印出所有的 "水仙花数 ",所谓 "水仙花数 "是指一个三位数,
 *其各位数字立方和等于该数本身。
 *例如:153是一个 "水仙花数 ",因为153=1的三次方+5的三次方+3的三次方。
*/
	public static void main(String[] args) {
		int a,b,c;
		for(int i=100;i<1000;i++) {
		a=i%10;
		b=i/10%10;
		c=i/100%10;
		if(a*a*a+b*b*b+c*c*c==i) {
			System.out.println(i);
		 }
	  }
   }
}

代码执行结果

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值