循环语句,转义字符,流程控制语句,标记

复习

分支语句

作用域

Scanner

开发工具

课外补充

计算机底层计算时用的是补码

三码:原码,反码,补码

正数三码合一

负数反码 = 原码符号位不动,其他位取反

负数补码 = 其反码+1

今日

循环语句

作用:重复执行一段代码

分类:

while

do while

for

while
语法:
    while(条件表达式){
        当条件为真,执行此处代码1
        代码执行后会再次判断条件,为真,执行代码1 
        为假跳出循环
    }
do while
语法:
    do{
        先执行此处代码,再判断,真就再执行循环体,假就跳出循环
    }while(条件表达式);
​
面试题:
    1.问while和do while的区别
        while:先判断再执行
        do while:先执行再判断
    2.哪个循环的循环体至少执行一次
        do while
for
由来:简化循环语法
语法:
    for(初始化;判断条件;自增/自减){
        循环体
    }
​
    执行流程:
        初始化,判断条件,循环体,自增,
        判断条件,循环体,自增,
        判断条件,循环体,自增,
        ...
        一直到判断条件不符合,跳出循环
​
初始化:就是变量的第一次赋值
判断条件:也可以看做是退出循环的条件
循环体:就是需要冲哪个服执行的代码
死循环:无法结束的循环
循环切套:再循环中写循环

转义字符

有特殊意义的字符
\t      制表符
\"      "
\'      '
\n      换行
\r\n    标准换行

流程控制语句

break:跳出当前循环
当前循环指的是距离break最近的循环
    for(i){
        for(j){
            break;
        }
    }
    break跳出的是j的循环
continue:从当前位置开始跳过本次循环

标记(了解)

标记
    语法:
        标记名:
    例:
        jjj:for(i){
            for(j){
                break jjj;
                //跳出的jjj标记的循环,也就是i的循环
            }
        }

慢慢捋顺

各种三角形

public class Demo17 {
    public static void main(String[] args) {
        /**
         *      * * *
         *      * * *
         *      * * *
         */
        System.out.println("* * *");
        System.out.println("* * *");
        System.out.println("* * *");
        System.out.println("-------------------------------------");
        /**
         *      * * * * * * * * *
         *      * * * * * * * * *
         *      * * * * * * * * *
         *      * * * * * * * * *
         *      * * * * * * * * *
         *      * * * * * * * * *
         *      * * * * * * * * *
         *      * * * * * * * * *
         *      * * * * * * * * *
         */
        System.out.println("* * * * * * * * *");
        System.out.println("* * * * * * * * *");
        System.out.println("* * * * * * * * *");
        System.out.println("* * * * * * * * *");
        System.out.println("* * * * * * * * *");
        System.out.println("* * * * * * * * *");
        System.out.println("* * * * * * * * *");
        System.out.println("* * * * * * * * *");
        System.out.println("* * * * * * * * *");
        System.out.println("-----------------------------------");
        for (int i = 0; i < 9; i++) {
            System.out.println("* * * * * * * * *");
        }
        System.out.println("--------------------------------------");
        for (int i = 0; i < 9; i++) {
            //System.out.println("* * * * * * * * *");
            System.out.print("* ");
            System.out.print("* ");
            System.out.print("* ");
            System.out.print("* ");
            System.out.print("* ");
            System.out.print("* ");
            System.out.print("* ");
            System.out.print("* ");
            System.out.print("* ");
            System.out.println();
        }
        System.out.println("--------------------------------------");
        for (int i = 0; i < 9; i++) {
            for (int j = 0; j < 9; j++) {
                System.out.print("* ");
            }
            System.out.println();
        }
        System.out.println("--------------------------------------");
        for (int i = 0; i < 9; i++) {
            for (int j = 0; j <= i; j++) {
                System.out.print("* ");
            }
            System.out.println();
        }
        System.out.println("--------------------------------------");
        //99乘法表
        for (int i = 1; i < 10; i++) {
            for (int j = 1; j <= i; j++) {
                //1 * 1 = 1
                //i + "*" + j + "=" +(i*j)
                System.out.print(i + "*" + j + "=" +(i*j)+"\t");
            }
            System.out.println();
        }
​
        System.out.println("-------------------------");
        /**
         * 打印等腰三角形
         * i
         * 0      *                     2 - 0 ~2+0
         * 1    * * *                   2-1 ~2+1
         * 2  * * * * *                 2-2 ~ 2+2
         *    0 1 2 3 4     j
         * i
         * 0         *                  3-0 ~3+0
         * 1       * * *                3-1~3+1
         * 2     * * * * *              3-2~3+2
         * 3   * * * * * * *            3-3~3+3
         *     0 1 2 3 4 5 6    j
         *
         *  规律;
         *      1,i的最大值就是中间值
         *      2,打印*的位置为中间值-当前i值 ~中间值 + 当前i值
         *      3,j的最大值是i的最大值的2倍
         */
        int line = 3;
        for (int i = 0; i <= line; i++) {
            for (int j = 0; j <= 2 * line; j++) {
                if (j >= line - i && j <= line + i){
                    System.out.print("* ");
                }else{
                    System.out.print("  ");
                }
            }
            System.out.println();
        }
        System.out.println("------------------------");
        int center = 3;
        for (int i = 0; i <= center; i++) {
            for (int j = 0; j <= 2 * center; j++) {
                if (j == center - i || j == center + i || i == center){
                    System.out.print("* ");
                }else{
                    System.out.print("  ");
                }
            }
            System.out.println();
        }
    }
}
​

作业

1,整理笔记
​
2,逻辑双与&&和逻辑单与&的区别
    两个的是短路与,区别在于短路与前面只要为假,后面的就不会判断,而一个的&不管前面是不是假的都会判断后面的
​
☆3,扩展的赋值运算符的特点是什么,请举例
​
4,算术运算符的++和--参与运算时候的特点
    分个前后,++在前,先自增,后运算,++再后,先运算,后自增
​
5,三元运算符的格式以及执行流程
    条件表达式?值1:值2;
    先判断条件表达式
    为真取值1 
    为假取值2 
​
6,看程序,写结果
​
(1).对于以下,有int x = 5, y = 6, z;
​
题目1:z = ++x + y++;
​
题目2:z = ++x + x++;
​
☆题目3:x = ++x + x++;
​
☆题目4:z = x > y ? ++x : y++;
​
​
(2).  int a=5;
    int b = (a++)+(--a)+(++a); 求a,b的值
    
7,编程题
1)已知两个变量,比较两个数据是否相等,键盘录入两个数据
2)已知三个变量,比较三个数据中的最大值,键盘录入三个数据
​
8,流程控制语句if...else...格式 ,完成下面"看程序,写结果"
1)int x = 1,y = 1;
​
if(x++==2 & ++y==2){
    x =7;
}
System.out.println("x="+x+",y="+y); 
    x2  y2
​
2)int x = 1,y = 1;
​
if(x++==2 && ++y==2){
    x =7;
}
System.out.println("x="+x+",y="+y);
    x2  y1
​
3) int x = 1,y = 1;
​
if(x++==1 | ++y==1){
    x =7;
}
System.out.println("x="+x+",y="+y);
    x2  y2
​
4)  int x = 1,y = 1;
​
if(x++==1 || ++y==1){
    x =7;
}
System.out.println("x="+x+",y="+y);
    x7  y1
​
5)boolean b = true;
​
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");
        b
    
9,身高是具有遗传性的,子女的身高和父母的身高有一定的关系。
​
    假定,父母和子女的身高遗传关系如下:
​
         儿子身高(厘米)=(父亲身高+母亲身高) ×1.08÷2
​
         女儿身高(厘米)=(父亲身高×0.923+母亲身高) ÷2
​
        现有父亲身高177CM,母亲身高165CM。求子女身高分别预计为多少?
​
        友情提示
        1)已知的父母身高如何用代码体现?
​
        2_)题目中的公式如何转化为代码?
        
10,请编程,从控制台接收2个考试的整数分数:数学分数、英语分数。
然后程序要计算并打印两科的平均分是多少?(结果取整数即可)   
    提示:键盘录入数据,英语成绩/数学成绩,然后求两科成绩平均分,打印结果即可
    
11,某餐厅,今日的优惠套餐为:麻辣香锅 、香辣土豆丝、可乐
。这三个商品的原价是:189元、15元、5元。
如果三款一起买,总价享受7.5折,小明今天点了这个套餐,
请定义变量,存储这三款菜的原价,和折扣价。
然后列出表达式计算他最后需要付多少钱?(价格使用double定义)
            提示:使用变量名定义麻辣香锅,土豆丝,可乐,初始化他们原价格,输出
              折扣价定义三个变量,计算结果,并输出
              
12,请编程,从控制台接收小明的年龄和小强的年龄。
然后程序要打印这两个年龄,以及较大的、和较小的分数?
    提示:键盘录入小明的年龄,小强的年龄(int类型) (预习if..else的第二种格式,完成)
        小明比小强大,程序提示"小明年纪大,是xx岁"
                             "小强年纪小,是xx岁"
                否则,就是"小强年纪大,是xx岁"
                         "小明年纪小,是xx岁"
​
13,计算10的阶乘
​
14,计算100以内数之和
​
15,计算100以内偶数和
​
16,while与do while的区别
​
17,for循环的语法格式与执行流程是什么
​
18,统计给定区间N,M内五位数中如下数字的个数
输入说明:整数N>10000 并且N< M ,M小于100000
输出说明:符合条件的数的个数
输入样例:20000 20100
输出样例:1
​
(说明:特殊数:个位等于万位,十位等于千位的数)
​
19,打印九九乘法表
​
20,打印菱形(附加题)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值