您好,欢迎来到伴沃教育。
搜索
您的当前位置:首页编程语言03:判断与循环

编程语言03:判断与循环

来源:伴沃教育

一、if判断

(一)java

1.语法:

if (条件1) {
     语句体1
} else if (条件2) {
     语句体2
}
    ...
else {
     以上条件都不成立执行的语句体
}

2. 示例:


public class L04_if3 {
    public static void main(String[] args) {
        System.out.println("请输入小明的考试成绩:");
        Scanner sc=new Scanner(System.in);
        int score=sc.nextInt();//分数
        if (score>95 & score<=100) {
            System.out.println("奖品:一辆自行车");
        } else if (score>90 & score<=95) {
            System.out.println("奖品:一套城堡");
        } else if (score>80 & score<=90) {
            System.out.println("奖品:一个变形刚");
        } else if (score>=0 & score<=80) {
            System.out.println("奖品:一顿胖揍");
        } else {
            System.out.println("数据录入错误~~");
        }

    }
}

(二)python

1.语法:

if 条件1:
    语句体1
elif 条件2:
    语句体2
    ...
else:
    以上条件都不成立执行的语句体

 2.示例:

score = int(input('请输入小明的考试成绩:'))
if score>95 and score<=100:
    print("奖品:一辆自行车")
elif score>90 and score<=95:
    print("奖品:一套城堡")
elif score>80 and score<=90:
    print("奖品:一个变形刚")
elif score>=0 and score<=80:
    print("奖品:一顿胖揍")
else:
    print("数据录入错误~~")

(三)异同

1.java中条件必须放在小括号中,python中条件书写在if关键字和分号之间即可。该方法同样适用于while循环。

2.java中语句体必须放置在大括号中,而python放置在冒号后面(为了方便阅读最好换行,当然不换行python也支持)。大括号中书写语句体,同样适用于switch、for循环、while循环、函数封装等java场景中。

二、switch判断(java特有的判断)

(一)语法

switch (表达式) {
    case 表达式的值1:
        语句体1;
        break;
    case 表达式的值2:
        语句体2;
        break;
      ...
    default:
        语句体n+1;
        break;
}

 

(二)其他

 

 

 

三、for循环

java和python中的for循环语法完全不一样。二者相比而言,python中的for循环更好用。二者均支持break和continue关键字,并且用法完全一致。

(一)java

1.语法

for (初始化语句;条件判断语句;条件控制语句) {
    循环体语句;
}

2.示例

示例1:

package Day4_IfFor;

public class L08_01for2 {
    public static void main(String[] args) {
        // 求1~100数字的累加和
        int sum=0;
        for (int i=1;i<=100;i++) {
            sum=sum+i;
        }
        System.out.println(sum);
    }
}

示例2:

package Summarize;

public class L02_01 {
    public static void main(String[] args) {
        for (int i=1;i<=6;i++) {
            if (i==3) {
                break;
            } else {
                System.out.println(i);
            }
        }
    }
}

示例3:

package Summarize;

public class L02_01 {
    public static void main(String[] args) {
        for (int i=1;i<=6;i++) {
            if (i==3) {
                continue;
            } else {
                System.out.println(i);
            }
        }
    }
}

(二)python

1.语法

for 临时变量 in 序列:
    循环体语句
else:
    循环正常结束后执行的代码

注:

        1.这里的序列包括range、字符串、列表、集体、元组、字典.键、字典.值、字典.项等可遍历的对象。

        2.关键字break,达到某个条件就终止循环。该关键同样适用于python中的while循环。

        3.关键字continue,达到某个条件时,退出当前一次循环继而执行下一次循环代码。该关键同样适用于python中的while循环。

        4.这里临时变量,指在该变量名称仅在循环内有效,可以使用任意变量名称。

2.示例

示例1:

for i in range(10):
    print(i)

示例2:

for i in "itheima":
    print(i)

 示例3:

for i in list("ABCDEF"):
    if i=="C":
        break
    else:
        print(i)

示例4:

for i in list("ABCDEF"):
    if i=="C":
        continue
    else:
        print(i)

四、while循环

        java和python中while循环的语法结构及用法是基本相同的。这里需要总结for和while循环的区别如下:
        for循环:知道循环次数或者循环范围。
        while循环:不知道循环次数或者循环范围,只知道循环结束条件。

(一)java

1.heima视频课中的讲解

(1)语法:

初始化语句;
while (条件判断语句) {
    循环体语句;
    条件控制语句;
}

(2)示例:

示例1:

package Day4_IfFor;

public class L09_01while {
    public static void main(String[] args) {
        int i=0;
        while (i<6) {
            System.out.println(i+1);
            i++;
        }
    }
}

示例2:

package Day4_IfFor;

import java.util.Scanner;

public class L10_03whileTest {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入被除数(正整数):");
        int x=sc.nextInt();
        System.out.println("请输入除数(正整数):");
        int y=sc.nextInt();
        //int z=x-y;
        int count=0;
        while (x>=y) {
            x=x-y;
            count++;

        }
        System.out.println("商:"+count+"\t余数:"+x);

    }
}

实际示例2同样可以使用java中的for循环实现,示例代码如下:

package Summarize;
import java.util.Scanner;
public class L02_03 {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入第1个整数:");
        int a=sc.nextInt();
        System.out.println("请输入第2个整数:");
        int b=sc.nextInt();
        int count=0;
        for (int x=a;x>b;x-=b) {
            a=a-b;
            count++;
        }
        System.out.println("商:"+count+",余数:"+a);
    }
}

 2.个人理解

for循环和while循环的区别在于(java课程黑曲老师讲解):
        for循环:知道循环次数或者循环范围。
        while循环:不知道循环次数或者循环范围,只知道循环结束条件。

        因此,我理解,while循环的实质,应是一个在一个无限循环执行过程,加入一个结束循环的条件到达到结束循环的目的,所以while循环的条件是一个true,上述while循环中存在什么初始条件在外面,条件控制语句在里面的情形,只是while循环的一个特例,并不能完整描述while循环的语法规则。

(1)语法

while (true) {
    if (条件1) {
        语句1
    } else if {
        语句2
    }
    ...
    else{
    break;                
    }
}

(2)示例

package Summarize;

import java.util.Scanner;
/*
* 输入一个整数,如果为6的倍数,则游戏进入下一关,否则,继续输入数字,直至下一关。
* */
public class L02_02 {
    public static void main(String[] args) {
        while (true) {
            Scanner sc = new Scanner(System.in);
            System.out.println("请输入一个整数:");
            int a=sc.nextInt();
            if (a%6==0) {
                System.out.println("真棒,请进入一关");
                break;
            } else {
                System.out.println("加油,加油,继续努力");
            }
        }
    }
}

(二)python

1.语法(黑马老师所讲)

while 条件:
    循环体

2.语法(1的基础上升级):

while True:
    循环体(带有结束循环的条件)

 3.语法(2的基础上具体化,,同java个人总结的语法)

while True:
    if 条件1:
        语句1
    elif 条件2:
        语句2:
       ...
    else:
        break

2.示例:

while True:
    i = int(input("请输入数字:"))
    if i==10:
        break
    else:
        print(i)

五、do......while循环(java中特有)

老师讲解时只是让了解java中有do...while循环,未讲解,需要时自己查资料弄明白就可以了。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- bangwoyixia.com 版权所有 湘ICP备2023022004号-2

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务