第三课-选择结构及循环结构

选择结构

1.switch:可以嵌套使用
    定义变量名
    switch(变量名){
        case 值:
            break;//可以不加
        case 值2:

        case 值3:
            break;
        default:
            break;//最后一行,可以不加break;
    }
    注意:
        变量名,只能是整型(int)或字符型或String类型(1.7版本才支持)或枚举
        break可以不加,表示当前case代码段不会跳出switch而是继续往下一信case运行
2.if-else
    if(条件表达式){//等同于三元运算符
        //true
    }else {
        //false
    }
    if(条件表达式){

    }else if(条件表达式){

    }else {

    }

    可以嵌套使用

练习一

1.定义一个变量保存小明的成绩。
当成绩为100分时,奖励一辆BMW;
当成绩为(80,99]时,奖励一个台iphone7;
当成绩为[60,80]时,奖励一本参考书;
其它时,什么奖励也没有。
注意使用switch和if-else结构完成

示例代码

import javafx.scene.input.ScrollEvent;

public class 练习一 {
    /*
    1.定义一个变量保存小明的成绩。
    当成绩为100分时,奖励一辆BMW;
    当成绩为(80,99]时,奖励一个台iphone7;
    当成绩为[60,80]时,奖励一本参考书;
    其它时,什么奖励也没有。
    注意使用switch和if-else结构完成
    */
    public static void main(String[] args) {
        //定义一个变量保存小明的成绩
        int score = 78;
        if(score == 100){
            System.out.println("奖励一辆BMW");
        }else if(score > 80 && score <= 99){
            System.out.println("奖励一个台iphone7");
        }else if(score >= 60 && score <= 80){
            System.out.println("奖励一本参考书");
        }else {
            System.out.println("什么奖励也没有");
        }
        // switch (score) {
        //     case 100:

        //         break;

        //     default:
        //         break;
        // }
    }
}

switch与if-else区别

switch主要用于精确匹配,if-else适合范围匹配
switch执行效率比if-else要高很多

选择结构作业

3.编写程序:由键盘输入三个整数分别存入变量num1、num2、num3,对它们进行排序(使用 if-else if-else),并且从小到大输出。

4.对下列代码,若有输出,指出输出结果。
int x = 4;
int y = 1;
if (x > 2) {
    if (y > 2) 
                System.out.println(x + y);
                System.out.println(“haha");
} else
    System.out.println("x is " + x);

5.
boolean b = true;
            if(b == false)  //如果写成if(b=false)能编译通过吗?如果能,结果是?
    System.out.println("a");
            else if(b)
    System.out.println("b");
            else if(!b)
    System.out.println("c");
            else
    System.out.println("d”);

6.大家都知道,男大当婚,女大当嫁。那么女方家长要嫁女儿,当然要提出一定的条件:高:180cm以上;富:财富1千万以上;帅:是。
如果这三个条件同时满足,则:“我一定要嫁给他!!!”
如果三个条件有为真的情况,则:“嫁吧,比上不足,比下有余。”
如果三个条件都不满足,则:“不嫁!”

switch结构练习
1.使用 switch 把小写类型的 char型转为大写。只转换 a, b, c, d, e. 其它的输出 “other”。

2.由键盘输入学生成绩,对学生成绩大于60分的,输出“合格”。低于60分的,输出“不合格”。

3.由键盘输入月份,根据用于指定月份,打印该月份所属的季节。3,4,5 春季 6,7,8 夏季  9,10,11 秋季 12, 1, 2 冬季

4. 编写程序:从键盘上输入2014年的“month”和“day”,要求通过程序输出输入的日期为2014年的第几天。

5.编写程序:从键盘上读入一个学生成绩,存放在变量score中,根据score的值输出其对应的成绩等级:

score>=90           等级:A
70=<score<90     等级: B
60=<score<70     等级: C
score<60             等级:D

6.从键盘分别输入年、月、日,判断这一天是当年的第几天

注:判断一年是否是闰年的标准:
    1)可以被4整除,但不可被100整除
    2)可以被400整除

获取键盘输入的内容

1.类名:java.util.Scanner
2.nextXXX():相关方法获取输入的内容
    nextInt():返回整数
    nextShort():
    nextDouble():
    next():读取到下一个空格
    nextLine():读取整行
3.代码示例
import java.util.Scanner;//一定要注意导入

public class ScannerDemo {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int score = sc.nextInt();//只能接收整数
        System.out.println(score);
        String input = sc.next();
        System.out.println(input);
    }
}

循环结构

1.while循环
    初始代码块
    while(条件表达式){
        循环体
        迭代代码
    }
2.for循环
    for(初始代码块; 条件代码; 迭代代码){
        循环体
    }
    for(int i = 0; i < 100; i++){
        System.out.println(i);
    }
3.do-while循环:无论如何会执行一次
    初始代码块
    do{
        循环体
        迭代代码
    }while(条件表达式);//注意最后的分号
4.for-each循环(1.5版本)
    变量:保存一个数据
    数组或集合:保存多个同类型的数据
    for(数据类型 变量名 : 数组或集合){
        循环体
    }
5.死循环:永远出不来循环。后面不能跟代码 

示例

public class 练习二 {
    //2.打印1~100之间所有奇数的和(提示%表示取余数)
    public static void main(String[] args) {
        // int i = 0;
         int sum = 0;
        // while(i <= 100){
        //     if(i % 2 == 1){
        //         sum += i;
        //     }
        // }

        // for(int i = 0; i <= 100; i++){
        //     if(i % 2 == 1){
        //         sum += i;
        //     }
        // }

        do{
            if(i % 2 == 1){
                sum += i;
            }
        }while(i <= 100);

        System.out.println("和为:" + sum);
    }
}

循环练习

循环练习,所有练习都要使用for、while、do-while循环来做一遍
1.编写程序FooBizBaz.java,从1循环到150并在每行打印一个值,另外在每个3的倍数行上打印出“foo”,在每个5的倍数行上打印“biz”,在每个7的倍数行上打印输出“baz”。

2.打印1~100之间所有奇数的和(提示%表示取余数)

3.打印1~100之间所有是7的倍数的整数的个数及总和(体会设置计数器的思想)

4.输出所有的水仙花数,所谓水仙花数是指一个3
位数,其各个位上数字立方和等于其本身。
    例如: 153 = 1*1*1 + 3*3*3 + 5*5*5

5.求1到100之间所有偶数的和。

6.从键盘读入个数不确定的整数,并判断读入的正数和负数的个数,输入为0时结束程序。

循环嵌套使用
7.打印九九乘法表(显示为梯形图)

8.1~100之间的所有质数打印出来

特殊流程控制语句

break;
    中止循环,对于嵌套循环中止最近一个
continue;
    中止当次循环,对于嵌套循环中止最近一个
return;
    中止方法。后面不能直接跟代码

特殊流程控制语句练习

1.将1~10循环打印出来,到第5次时中断程序
2.将1~10循环打印出,到第5次时跳过

个人关于学习Java的一个建议

本文中,都是本人在**衡阳华信IT教育公司**上课的视频,视频中有很多练习,请同学们切勿眼高手低,觉得自己能在脑袋中想把题理清楚就不动手写代码。代码这一行,只有多练,没有多看。没有简单的题目只有更快的编程实现。学习编程的过程就如大家大篮球,打LOL或者Dota2游戏一样。菜鸟都是通过大量练习成为真正的高手,没有哪一个篮球高手是看书看出来的,也没有哪一个游戏职业选手是看别人玩游戏看出来的。当你在写程序时,也有手感时,说明你才是真正的入门。
  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值