• js 5


    1、分支结构

             1、else...if结构

                       1、语法

                                if(条件1){

                                         语句块1;

                                }else if(条件2){

                                         语句块2;

                                }... ...else{

                                        

                                }

             2、switch...case结构

                       1、场合

                                等值判断

                       2、语法

                                switch(变量/表达式){

                                         case 值1:

                                                   语句块1;

                                                   break;

                                         case 值2:

                                                   语句块2;

                                                   break;

                                         ... ...

                                         default:

                                                   语句块n;

                                                   break;

                                }

                       3、不加break

                                从匹配的case块开始,一直向下执行,直到结束或碰到break位置

                       4、直落形式

                                两个case块之间没有任何内容

                                switch(变量){

                                         case 1:

                                         case 2:

                                         case 3:

                                                   console.log("匹配到1,2,3,会执行相同的操作");

                                                   break;

                                }

    2、循环

             什么是循环:

                       一遍又一遍重复的执行相同或相似的代码

             循环的特点:

                       1、循环条件

                       2、循环操作

             1、while

                       1、语法

                                while(条件){

                                         操作

                                }

                       2、循环的流程控制语句

                                1、continue

                                         继续,终止本次循环,继续执行下次循环

                                2、break

                                         破坏,结束整个循环

                                while(true){

                                         switch(num){

                                                   case 1:

                                                            ...

                                                            break;

                                                   case 2:

                                                            ...

                                                            break;

                                                   case 3:

                                                            ...

                                                            continue;

                                         }

                                }

                                以上写法是正确的,continue 主要作用在 while循环中,而不是switch结构

                                switch(num){

                                                   case 1:

                                                            ...

                                                            break;

                                                   case 2:

                                                            ...

                                                            break;

                                                   case 3:

                                                            ...

                                                            continue;

                                         }

                                以上写法是错误的,continue是不能作用在switch结构中的。

             2、do...while

                       1、语法

                                do{

                                         操作

                                }while(条件);

                                执行流程:

                                         1、先执行 循环操作

                                         2、判断循环条件,如果条件为false,则退出循环,如果条件为true,则继续执行循环操作

                       2、while 循环 与 do...while循环的区别

                                1、while

                                         先判断条件,后执行操作

                                         最少一次都不执行

                                2、do...while

                                         先执行操作,后判断条件

                                         最少会执行一次循环操作

             猴子吃桃问题

                       猴子摘下了若干个桃子,当即吃了一半,还不过瘾,又多吃了一个,第二天,又将剩下的桃子吃了一半,又多吃一个。以后每天都吃了前一天剩下的一半零一个。到第10天的时候,发现只剩下一个桃子。求:第一天共摘下多少个桃子。

                       假设:

                                第一天 共摘了 total 个桃子

                                每天剩下的桃子 left 个(默认是1)

                                天数      left   公式(推前一天)

                                10天        1    left(1)=total/2-1 ==> total=(left+1)*2

          09天        4           total=(left+1)*2

          08天       10    total=(left+1)*2; left=total;

                                07天       22

                                06天       46

                                05天       94

                                04天       190

                                03天       382

                                02天       766

                                01天       1534

    ==========================================

    1、循环结构-for

             1、while

                       在控制台上输出1-100之间所有的数字

                       //1、声明条件:从1开始

                       var i=1;

                       //2、循环结构-循环条件

                       while(i<=100){//条件

                                console.log(i);//3、操作

                                i++;//4、更新循环变量

                       }

             2、for语法

                       for(表达式1;表达式2;表达式3){

                                //循环操作

                       }

                       表达式1:声明条件

                       表达式2:循环条件判断

                       表达式3:更新循环变量

                       for循环执行流程:

                       1、计算表达式1的值

                       2、计算表达式2的值(boolean),如果为true,则执行循环体,如果为false,则退出循环

                       3、执行循环体

                       4、计算表达式3的值

                       5、计算表达式2... ...

             3、for语句三个表达式的特殊用法

                       1、表达式1 允许为空

                                for(;表达式2;表达式3){

                                        

                                }

                                表达式1;

                                for(;表达式2;表达式3){

                                        

                                }

                       2、表达式2 允许为空

                                如果省略的话,则为死循环

                                最好在循环内部补充退出条件

                       3、表达式3 允许为空

                                死循环

                       4、三个表达式都允许为空

                                for(;;){

                                         console.log("这是死循环");

                                }

                       5、表达式1 和 表达式3 的内容可以多样化

                                允许编写多个表达式

             4、循环嵌套

                       for/while/do.while 多允许相互嵌套或转化

                       循环嵌套:在一个循环中,又出现另一个循环

                                for(var i=1;i<=10;i++){

                                         for(var j=1;j<=10;j++){

                                                   console.log(j);

                                         }

                                }

             5、while/do..while/for 的异同点

                       1、for 和 while

                                共同点:

                                         先判断条件,再执行循环体

                                使用场合:

                                         1、for     

                                                   优先使用在确定循环次数的场合下

                                         2、while

                                                   优先使用在不确定循环次数的场合下

                       2、do...while

                                先执行循环操作,再判断循环条件

                                最少 执行1次循环

                                场合:

                                         1、优先适用于不确定循环次数的场合下

                                         2、先执行循环体,根据循环体内的操作决定循环条件时,使用do...while

             练习:

                       要求用户 弹框中分别输入 年,月,日

                       求:该日 是星期?

                       前提:1900.1.1 是星期一

                                                   求:2016.10.28

                                                   1900.1.1 - 2015.12.31 : x

                                                   2016.1.1 - 2016.9.30 :y

                                                   2016.10.28 距 1900.1.1 :x+y+28

             练习:

                       1、控制台上 打印输出 *

                       2、控制台上 打印输出 *****

                       3、控制台上 打印输出

                                *****

                                *****

                                *****

                                *****

                                *****

                       4、控制台上 打印输出 以下内容

                                *        第1行 1个星星

                                **       第2行 2个星星

                                ***      第3行 3个星星

                                ****     第4行 4个星星

                                *****    第5行 5个星星

                       5、打印99乘法表

                                1*1=1

                                1*2=2 2*2=4

                                1*3=3 2*3=6 3*3=9

                                1*4=4 2*4=8 3*4=12 4*4=16

                                .....

                                1*9=9 2*9=18 3*9=27 4*9=36

             3、练习

                       1、打印输出 1-1000之间所有的奇数

                       2、计算 1-1000 所有偶数的和

                       1*1=1

                       1*2=2 2*2=4

                       1*3=3 2*3=6 3*3=9

                       ...

                       3、素数

                                从3 开始

                                3 是素数

                                4 不是素数

                                5 是素数

                                6 不是素数

                                7 是素数

                                8 不是素数

                                9 不是

                                10 不是

                                11 是

                         10:2-9

                                35:2-34/2

                                36: 2-36/2

                                36/18 = 2

                                36/19 = 1.0000

                                36/36 = 1

                       有一对兔子,从出生的第3个月起每个月都生一对兔子,小兔子长到第3个月后每个月又生一对兔子,假如兔子都不死,问某个月的兔子总和是多少

                       1,1,2,3,5,8,... ...

                       1,1,2,3,5,8,13,21,34,55,89

                       斐波那契数列

                       var n1=1,n2=1;

                       n1 = n1 + n2;

                       n2 = n1 + n2;

                       console.log(n1);

                       console.log(n2);

                       n1 = n1 + n2;

                       n2 = n1 + n2;

                       console.log(n1);

                       console.log(n2);

             求:数列中,某位上的数字时多少

              假定 f(10); 想求 第10个月 兔子的总量

                           f(20); 想求 第20个月 兔子的总量

                                         f(5); 想求 第5个月 兔子的总量

                                         f(4); 想求 第4个月 兔子的总量

                                         f(3); 想求 第3个月 兔子的总量

                                         f(2); 想求 第2个月 兔子的总量 = 1

                                         f(1); 想求 第1个月 兔子的总量 = 1

                                         f(3)=f(2)+f(1)

                                         f(4)=f(3)+f(2)

                                         f(5)=f(4)+f(3)

                                         ...

                                         f(100)=f(99)+f(98)

            

  • 相关阅读:
    基于Text-CNN模型的中文文本分类实战 流川枫 发表于AI星球订阅
    SQL Server 定时执行SQL语句的方法
    linq 根据指定条件返回集合中不重复的元素
    asp.net mvc ChildActionOnly 和ActionName的用法
    C# 让枚举返回字符串
    EF中使用SQL语句或存储过程
    Sql Server系列:视图
    C# 获取web.config配置文件
    C# 在EF中直接运行SQL命令
    c# mvc 获取 HtmlHelper 表达式值和时间格式化 去边框
  • 原文地址:https://www.cnblogs.com/Hale-Proh/p/7199604.html
Copyright © 2020-2023  润新知