Java入门--分支结构

Java入门

1、if...else

完成一个判断学员成绩等级的小程序:

你编写的程序要能根据不同的分数输出不同的等级,规则如下:
85-100分: 优,非常棒!
85分以下: 良,下次加油!

输出结果如下:
请输入学员成绩:91
优,非常棒!
请输入学员成绩:70
良,下次加油!

以下是代码:

import java.util.Scanner;

public class scoreJudge{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入学员成绩:");
        int scoreInt = sc.nextInt();
        if(scoreInt >= 85)
            System.out.println("优,非常棒!");
        else{
            System.out.println("良,下次加油!");
        }
    }
}

在生活中我们经常会根据一个条件判断结果,比如:如果中国的洲际导弹试发射成功,中国的国际地位将上升。

而在代码中,我们将用if描述这个过程,用法:

if(<条件>){
    <条件成立执行的代码>
}

执行过程:

条件为真

条件为假

其他代码

条件

代码块

后续代码

如果代码块中只有一条语句,我们可以省略大括号,有多条语句时不能省略。

接下来是if...else:

if(<条件>){
    <条件成立执行的代码>
}else{
    <条件不成立执行的代码>
}

条件为真

条件为假

其他代码

条件

代码块1

代码块2

后续代码

一目了然。

2、多重if

编写一个星级成绩评定系统,规则如下:

90分及以上:五星成绩。
80-90分(包括80分,不包含90分): 四星成绩。
70-80分(包括70分,不包含80分):: 三星成绩。
60-70分(包括60分,不包含70分):: 俩星成绩。
60分以下(不包含60分)::无星成绩。

效果如下:
星级成绩评定系统
请输入成绩:88
****四星成绩

星级成绩评定系统
请输入成绩:50
无星成绩

星级成绩评定系统
请输入成绩:70
***三星成绩

代码:

import java.util.Scanner;

public class starSystem{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        System.out.println("星级成绩评定系统");
        System.out.println("请输入成绩:");
        int score = sc.nextInt();
        if(score >= 90)
            System.out.println("*****五星成绩");
        else if(score >= 80)
            System.out.println("****四星成绩");
        else if(score >= 70)
            System.out.println("***三星成绩");
        else if(score >= 60)
            System.out.println("**二星成绩");
        else
            System.out.println("无星成绩");
    }
}

多重if的语法:

if (<条件1>) {
    <条件1成立执行的代码>
}else if(<条件2>){
    <条件2成立执行的代码>
}else if(<条件3>){
    <条件3成立执行的代码>
}else{
    <以上条件都不成立执行的代码>
}

执行的过程:

其他代码

条件1

代码块1

条件2

代码块2

代码块3

后续代码

二目了然。

3、Switch

实现要求:

实现根据月份输出季节的功能。
规则如下:
一年有四季 春季(3,4,5)夏季(6,7,8)秋季(9,10,11) 冬季(12,1,2)

效果如下:
请输入月份:10
10月是秋天

代码:

import java.util.Scanner;

public class monthJudge{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入月份:");
        int month = sc.nextInt();
        String season;
        switch(month){
            case 3, 4, 5: season = "春天"; break;
            case 6, 7, 8: season = "夏天"; break;
            case 9, 10, 11: season = "秋天"; break;
            case 12, 1, 2: season = "冬天"; break;
            default: System.out.println("输入无效"); break;
        }
        System.out.println(month + "月是" + season);
    }
}

switch的语法:

switch(表达式){
    case 常量1:
        <若干语句1>
        break;
    case 常量2:
        <若干语句2>
        break;
    
    ......
    
    default:
        <不满足上述所有情况执行的代码>
        break;
}

判断表达式的结果是以下case中的哪一个,然后运行对应case里的语句,并且碰到break退出。break必须写,不然会执行case的下一个case里的代码。如果所有case都不满足表达式的结果则执行default里的代码。

1、switch 后面小括号中表达式的值必须是整型、字符型或字符串。

2、case 后面的值可以是常量数值,如 1、2;也可以是一个常量表达式,如 2+2 ;但不能是变量或带有变量的表达式,如 a * 2。

3、default 块可以出现在任意位置,也可以省略。

三目了然(杨戬)。

本文作者:VellyKiey

本文链接:https://www.cnblogs.com/vellynia/p/18602284

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   VellyKiey  阅读(9)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起