Java 逻辑控制语句

1.顺序结构

Java的基本结构就是顺序结构,除非特别指明,否则就是按照顺序一句一句执行。

顺序结构是最简单的算法结构。

语句与语句之间,框与框之间是按从上到下的顺序进行的,它是由若干个依次执行的处理步骤组成的,它是任何一个算法都离不开的一种基本算法结构。

2.条件分支结构

• 当条件满足时运行某些语句;
当条件不满足时则不运行这些语句 – if结构
• 当条件满足时运行某些语句;
当条件不满足时运行另外一些语句 – if-else结构

举例:1.判断年份是否为闰年?

import java.util.Scanner;

public class Demo02ifLeapYear {
    public static void main (String[] args){
        Scanner scan = new Scanner(System.in);
        System.out.println("判断是否为闰年:");
        int a = scan.nextInt();
        if (a%4==0&&a%100!=0||a%400==0){
            System.out.println("是闰年!");
        }else {
            System.out.println("不是闰年!");
        }
    }
}

运行结果:
是闰年!

举例:2.根据商品价格和数量,以及顾客付款金额,判断需要找零的金额或是需要补足的金额(支付金额若超过500元,可以享受8折优惠)。

	import java.util.Scanner;

	public class Demo02If {
		public static void main (String [] agrs) {

			Scanner scan = new Scanner(System.in);

			System.out.println("请输入商品单价:");
			double cost = scan.nextDouble();
			System.out.println("--------");

			System.out.println("请输入商品数量:");
			double a = scan.nextDouble();
			System.out.println("--------");

			System.out.println("请输入实付金额:");
			double money = scan.nextDouble();
			System.out.println("--------");

			double sun = cost*a;
			if (sun>money) {
				System.out.println("实付金额不足!还需要:"+(sun-money)+"元");
			}else if(sun<=money) {
				if(money>=500) {
					System.out.println("您支付的金额超过500元,可以享受8折优惠!");
					sun=sun*0.8;
					System.out.println("找零金额:"+(-(sun-money))+"元");
				}else {
					System.out.println("找零金额:"+(-(sun-money))+"元");
				}
			}
		}
	}

运行结果:
在这里插入图片描述

举例:对于学生分数的简单评级。

import java.util.Scanner;

public class Demo01If {
	public static void main (String [] agrs) {
		//分支结构
		System.out.println("请输入你的分数:");
		//控制台输入数值	——JDK提供的类库
		Scanner scan = new Scanner(System.in);
		int score = scan.nextInt();
		
		if (score == 100) {
			System.out.println("A+");
		}else if (score >=95){
			System.out.println("A");
		}else if (score >=90){
			System.out.println("A-");
		}else if (score >=85){
			System.out.println("B+");
		}else if (score >=80){
			System.out.println("B-");
		}else if (score >=75){
			System.out.println("C+");
		}else if (score >=70){
			System.out.println("C");
		}else if (score >=65){
			System.out.println("C-");
		}else if (score >=60){
			System.out.println("D+");
		}else {
			System.out.println("D");
		}
	}
}

在这里插入图片描述

举例:4.Switch语句的应用,判断每个月的天数。

import java.util.Scanner;

public class Demo03Switch {

	public static void main(String[] args) {

		Scanner scan = new Scanner(System.in);
		System.out.println("请输入月份:");
		int  month = scan.nextInt();
			
		switch(month) {
			case 1:
			case 3:
			case 5:
			case 7:
			case 8:
			case 10:
			case 12:
				System.out.println(month+"月,有一共有31天");
				break;
			case 4:
			case 6:
			case 9:
			case 11:
				System.out.println(month+"月,有一共有30天");
				break;
			case 2:
				System.out.println(month+"月,有一共有28天");
				break;
			default:
				System.out.println("这个月不存在!");
		}
	}
}

运行结果:
在这里插入图片描述

3.循环结构

循环是程序设计语言中反复执行某些代码的一种计算机处理过程,是一组相同或相似语句被有规律的重复性执行。
循环的要素:
– 循环体(相同或相似的语句)
– 循环条件(继续执行循环的条件,某些情况下循环条件以循环次数的方式体现)

循环语句有以下三种:
  for
  while
  do-while

    for(初始值; 循环条件; 步进方式){循环体}
        有规律, 或者知道次数
        
    while(循环条件)  {
    	循环体
    }
    
    
    do{
    	循环体
    } while(循环条件)
    
        直到....
        当... 没有规律, 或者不知道次数

终止循环: break加粗样式

结束一次循环,继续下次循环: continue

举例:1.求1-100的和

public class Demo04For {
    public static void main (String [] args){
        //求1-100的和
        int sum = 0;
        for (int i =1 ;i<=100;i++){
            sum+=i;
        }
        System.out.println("输出sum的值:"+sum);
  }

运行结果:
在这里插入图片描述

举例:2.求20!的值

public class Demo04For {
    public static void main (String [] args){
        //求20!
        sum = 1 ;
        int a = 0;
        for (int i =1; i<=20;i++){
            sum = sum *i;
            a = a +sum;
        }
        System.out.println(a);
    }
}

运行结果:
在这里插入图片描述

举例:3.有一对兔子,从第3个月开始,每个月再生一对兔子,每个月有多少只兔子, 10个月有几只?

public class Demo04Rabbit {
    public static void main (String[] args){
        //有一对兔子,从第3个月开始,每个月再生一对兔子,每个月有多少只兔子, 10个月有几只?
        int f1 = 1;
        int f2 = 1;
        int sum ;
        for (int i =3 ;i<=10;i++){
            sum = f1 +f2;
            f1 = f2;
            f2 = sum;
            System.out.println("第"+i +"个月的兔子总数是:"+sum);
        }
    }
}

运行结果:
在这里插入图片描述

举例:4.猜数游戏

import java.util.Scanner;

public class Demo04Random {
    public static void main (String[] args){
        Scanner scan = new Scanner(System.in);
        int num  = (int)(Math.random()*1000)+1;
        int i = 1;
        System.out.println("**********************************");
        System.out.println("猜数游戏,请输入1个1——1000之间的数(你有10次机会!):");
        while (i<=10){
            int a = scan.nextInt();
            if (a>num){
                System.out.println("大了");
            }else if (a<num){
                System.out.println("小了");
            }else {
                System.out.println("恭喜你猜对了!");
                break;
            }
            System.out.println("你还有"+(10-i)+"次机会");
            System.out.println("----------------------");
            i++;
            if (i==11){
                System.out.println("正确答案为:"+num);
            }
        }
        scan.close();
    }
}

运行结果:
在这里插入图片描述

举例:5.9x9乘法表


public class Demo07_9X9 {

    public static void main(String[] args) {
        for(int i =1; i<=9;i++){
            for(int j=1 ;j<=i;j++){
                System.out.print(i+"X"+j+"="+j*i+"\t");
            }
            System.out.println();
        }
    }
}

运行结果:
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值