Java--程序控制结构(上)

目录

1.1 顺序控制

1.2 分支控制

1. 单分支

2. 双分支:

练习:

3. 多分支

练习:

1.3 嵌套分支

1.4 switch基本语法

细节:

switch和if的进行比较:


介绍:

在程序中,程序运行的流程控制决定程序是如何执行的,是我们必须掌握的,主要有三大流程控制语句。

1.1 顺序控制

介绍:从上到下逐行的执行,中间没有任何判断和跳转。

1.2 分支控制

1.2.1 if-else介绍

1. 单分支

 基本语法: if(条件表达式){

   执行代码块;

}

说明:当条件表达式为真,就会执行{}代码。如果为false,就不执行,说明如果我们的执行代码块只有一条语句,则可以不用{}。

2. 双分支:

基本语法

if(条件表达式){

 执行代码块1;

}

else{

执行代码块2;

}

说明:当条件表达式成立,即执行代码块1,否则执行代码块2.

练习:

1. 对下列代码,若有输出,指出输出结果:

int x=7;

int y=4;

if(x>5){

     if(y>5){

              System.out.println(x+y);

}

             System.out.println("达瓦大屋顶"); 

} else 

           System.out.println("x is" + x);

//输出结果 达瓦大屋顶

3. 多分支

语法:

if(条件表达式1){

 执行代码块1;

}

else if(条件表达式2){

执行代码块2;

}

.....

else{

执行代码块n;

}

练习:

输入报国同志的芝麻信用分:

1. 信用分为100分时,输出 信用极好

2. 信用分为(80,99】时,输出信用优秀

3. 信用分为【60,80】时,输出信用一般

4. 其他情况,输出信用不及格

5. 请从键盘输入报国的芝麻信用分,并加以判断

代码:

import java.util.Scanner;

public class if01{

    public static void main(String[] args){

    Scanner myscanner = new Scanner(System.in);

System.out.println("请输入信用分");

if (grade >=1 && grade<=100){

    int  grade = myScanner.nextInt();

if (grade == 100){

      System.out.println("信用极好");

} else if(grade>80 && grade <=99){

 System.out.println("信用优秀");

} else if(grade>=60 && grade <=80){

 System.out.println("信用一般");

} else {

    System.out.println("信用不及格");

}

}else {

       System.out.println("请重新输入");

}

}

1.3 嵌套分支

介绍:

在一个分支结构中又完整的嵌套了另一个完整的分支结构,里面的分支结构称为内层分支外面的分支结构称为外层分支。不要超过三层

1.4 switch基本语法

基本语法:

switch(表达式){

  case 常量1:

  语句块1;

  break;

  case 常量2:

  语句块2;

  break;

  ......

default:

default 语句块;

break;

}

1. switch关键字,表示switch分支

2. 表达式对应一个值

3. case常量1:当表达式的值等于常量1,就执行语句块1

4. break:表示退出switch

5. 如果和case常量1匹配,就执行语句块1,如果没有匹配,就继续匹配case常量2

6. 如果一个都没有匹配上,就执行default

细节:

1.  表达式数据类型,应和case后的常量类型一致,或者是可以自动转换可以相互比较的类型,比如输入的是字符,而常量是int。

2. switch(表达式)中表达式的返回值必须是:(byte,short,int,char,enum,String)

3. case子句中的值必须是常量,而不能是变量

4. default子句是可选的,当没有匹配的case时,执行default

5. break语句用来执行完一个case分支后使程序跳出swutch语句块;如果没有写break,程序会顺序执行到switch结尾,除非遇到break;

主代码:

if(score >=0 && score <=100){

   switch((int)(score/ 60)){

      case 0 :

          System.out.println("不合格");

break;

      case 1 :

           System.out.println("合格");

   break;      

}

}else {

     System.out.println("输入的成绩要在0-100");

}

switch和if的进行比较:

1. 如果判断的具体数值不多,而且符合byte,short,int,char,enum,String这六种类型。虽然俩个语句都可以使用,建议使用stitch语句。

2. 其他情况:对区间判断,对结果为Boolean类型判断,使用if,if的使用范围更广。

你可能感兴趣的:(Java,java,开发语言,程序控制结构,switch基本语法)