JAVA基础(四)——程序流程控制

1、分支结构

1.1 if……else……
		int score = 45;
        if(score>=80){
    
    
            System.out.println("恭喜你,优秀");
            
        }else if(score>=60 && score<=80){
    
    
            System.out.println("恭喜你,及格了");
            
        }else{
    
    
            System.out.println("很遗憾,你没有及格");
            
        }
import java.util.Scanner;
public class HelloWorld {
    
    

    public static void main(String[] args) {
    
    
      	Scanner scan = new Scanner(System.in);
      	
        System.out.println("请输入你的身高:(cm)");
        int height = scan.nextInt();
        
        System.out.println("请输入你的财富:(千万)");
        double money = scan.nextInt();
        
        System.out.println("请输入你是否帅: (true or flase)");
        boolean isHandsome = scan.nextBoolean();
        
        if(height>=180 && money>=2 && isHandsome == true){
    
    
            System.out.println("我一定要嫁给他");
            
        }else if(height>=180 || money>=2 || isHandsome == true){
    
    
            System.out.println("比上不足比下有余,嫁吧")
            
        }else{
    
    
            System.out.println("不嫁");
        }
    }
}
1.2 switch……case……结构

在这里插入图片描述

注意
  • 根据switch中的表达式,依次匹配各个case中的常量,一旦匹配成功,则进入相应的case结构中,调用其执行语句,当调用完执行语句后,则仍然继续执行其他case结构中的执行语句,直到遇到break关键字或swicth-case结构末尾为止结束
  • break可以使用在switch-case结构中,表示一旦执行到此关键字,就跳出swicth-case结构
  • swicth中的表达式,只能是以下六种数据结构之一:byte、short 、char、 int、 枚举类型、 String
  • case之后只能声明常量,不能什么范围
 int number = 0;
      switch (number){
    
    
          case 0:
              System.out.println("one");
              break;
          case 1:
              System.out.println("two");
              break;
          case 2:
              System.out.println("three");
              break;
          default:
              System.out.println("other");
              break;
      }

2、循环结构

2.1 for循环

在这里插入图片描述

  int sum = 0; // 记录所有偶数的总和
      int count = 0; // 记录偶数的个数
      for(int i = 1;i<=100;i++){
    
    
          if(i % 2==0) {
    
    
              System.out.println(i);  // 输出100以内的偶数
              sum += i;
              count++;
          }
      }
        System.out.println("总和为:"+sum);
        System.out.println("个数为:"sum);
    }
  • break关键字使用
	  int a  = 12;
      int b = 16;
      // 获取两个数较大值
      int min = (a > b)? b : a;
      // 获取两个数较小值
      int max = a > b ? a :b;
      // 获取最小公倍数
      for(int i=min;i >= 1;i--){
    
    
          if(a % i ==0 && b % i ==0){
    
    
              System.out.println(i);
              break;
          }
      }
      // 获取最大公约数
      for(int i=max;i<a*b;i++){
    
    
          if(i % a == 0 && i % b == 0){
    
    
              System.out.println(i);
              break;
          }
      }
2.2 while循环

for循环和while循环是可以相互转换的在这里插入图片描述

 	  int i = 1;
      while(i <= 100){
    
    
          if(i % 2 == 0){
    
    
              System.out.println(i);
          }
          i++
      }
2.3 do……while循环

在这里插入图片描述

	  int num = 1;
      do{
    
    
          if(num % 2 == 0 ){
    
    
              System.out.println(num);
          }
          num++;
      }while(num <= 100);
2.4 嵌套循环
  • 内层循环结构遍历一遍,只相当于外层循环体执行了一次
  • 假设外层循环需要执行m次,内层循环需要执行n次,此时内层循环的循环体一共执行了:m*n次
	for(int i =0;i<=5;i++){
    
    
          for(int j= 0;j<=5;j++){
    
    
              System.out.print("*");
          }
          System.out.println();
      }

实现99乘法表

 	for(int i =1;i<=9;i++){
    
    
          for(int j= 1;j<=i;j++){
    
    
              System.out.print(j+"*"+i+"="+(i*j)+" ");i
          }
          System.out.println();
      }

输入100以内所有质数

	for(int i=2;i<=100;i++){
    
    
         boolean isFlag = true;
         for(int j=2;j<i;j++){
    
    
             if (i%j ==0){
    
    
                 isFlag = false;
                 break;
             }
         }
         if(isFlag==true){
    
    
             System.out.println(i);
         }
     }
2.5 break和continue
  • break:结束当前循环
  • continue:结束当次循环
	for(int i=1;i<5;i++){
    
    
            if(i==3){
    
    
               break;
            }
            System.out.println(i);  // 1 2
        }
    for(int i=1;i<5;i++){
    
    
            if(i==3){
    
    
               continue;
            }
            System.out.println(i);  // 1 2 4 5
        }

猜你喜欢

转载自blog.csdn.net/weixin_42164004/article/details/114011263