循环的初步认识

137 阅读1分钟

一、 什么是循环语句?

帮助我们多次执行某一个代码段的语句

二、 while循环

1、语法:

while(条件){
//要循环执行的代码
}

2、死循环

var num=1;
while(num<5){//死循环
console.log(1)
}

3、 循环

var num=1;
while(num<5){
console.log(1)
num++ //自增1 直到5跳出循环
}

4、循环的组成

  1. 初始化条件
  2. 条件判断,不符合是结束循环
  3. 循环执行的代码
  4. 改变自身。如果不写,死循环

三、do...while()循环

1、语法

do{
    //要执行的代码
}
while(条件)

2、 和while循环的差异

while循环首次执行就会判断条件,条件不符合就不会执行

do...while循环,首次就执行,不需要判断条件,执行完毕在去

3、循环代码

var num=10
do{
    console.log(1)
    num++
}
while(num<6)

   /*
   首次执行
   1、直接执行{...}代码,所以会打印1,num++
   2、判断条件 num<6 ,此时num一定大于6 ,所以条件为false,条件false直接停止循环
   */

四、for循环

1、语法

 for(1、声明变量;2、判断条件;3、改变自身){}
 

2、输出10次1

for(var i=0;i<10;i++){
console.log(1)
}

4、水仙花

有一个二位数,个位 十位 百位 三个位置的3次方 的和等于它自身

    for(var i=100;i<1000;i++){
        //现在拿到了三位数,我们现在应该拿到了三位数,各个位置上的数字
        var bai=parseInt(i / 100)
        var shi=parseInt(i % 100 / 10)
        var ge=i % 10

       // var sum=bai*bai*baid +shi*shi*shi + ge*ge*ge;
        var sum=bai**3 + shi ** 3 + ge ** 3
        //** 表示返回 肉测的变量或值的X次方。这个X就是**右侧数字
        if(i==sum){
            console.log(i + '这个数字是水仙花数')
        }
    }
    

5、质数

  • 当一个数字 只能被1和它本身整除,那么它是一个质数

  • prompt() :JS当中可以让用户输入一些文本传递给JS

  • 注意:prompt返回的用户输入值是string类型;如果用户点击了取消。则返回 null

    //var num=+prompt("请输入一个数字");
    var num=prompt("请输入一个数字")-0;
    var count=0;
    for(var i=2; i<num;i++){
        if(num % i == 0){
            count =count +2
        }
    }
    count==0?console.log("是质数"):console.log("不是质数")
    

五、流程控制语句

  • break;关键字的应用

  • continue 关键字 的应用

  • 共同点:都可以打断循环

  • 不同点:

    1. break:当我们想满足某一个条件时,停止整个循环,可以使用break;
    2. continue:当我们想满足某一个条件时,停止当前本轮循环,后续的循环正常执

六、循环嵌套

1、什么是循环嵌套??

循环嵌套,两个循环叠在一起

2、语法

for(var i=0;i<3;i++){
        console.log('第'+i+'次循环');
        for(var j=0;j<3;j++){
            console.log(j)
        }
    }

外层循环执行一次,内层循环 就会完整的 执行一次

3、案例 一

***
***
***
-----------
for(var i=0;i<3;i++){//行数
for(var j=0; j<3 ;j++){ //列数
     document.write('*')
}
document.write("<br>")
}
//注意:循环嵌套的条件或变量,不能与内层循环的相同

4、案例 二

    *
    **
    ***
    ****
    ---------------------------
    
       for(var i=1;i<=4;i++){
        for(var j=1;j<=i;j++){
           document.write('*')
        }
        document.write('<br>')
    }

5、案例三:九九乘法表

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        *{
            padding: 0;
            margin: 0;
        }
        tr{
            height: 50px;
        }
        td{
            width: 150px;
            text-indent: 20px;
            background-color: #333;
            color: white;
            font-size: 20px;
            font-weight: bold;
            font-family: '宋体';
            border: 1px solid #fff;
            border-top: 0;
        }
    </style>
</head>
&emsp;
<body>
    <script>
        for(var i=1;i<=9;i++){
            document.write(`<table cellspacing=0><tr>`)
            for(var j=1;j<=i;j++){
               document.write(`<td> ${j} × ${i} = ${i*j} </td>`)
            }
            document.write(`</tr></table>`)
        }
    </script>
</body>
</html>

6、案例四

苹果 3元,梨 2元 , 桃子1元,问:用200元 买100个水果有多少种方案???

for(var a=9;i<=100;i++){
    for(var b=9;b<=100;b++){
        for(var c=0;c<=100;c++){
            if(a*3+b*2+c*1 =200 && a+b+c==1){
               document.write(a+"个苹果,"+ b + "个梨" + c + “个桃子” )
            }
        }
    }
}