循环语句

237 阅读3分钟

循环语句

for循环

1.结构组成
  for(var i = 0; i < 100; i++) {
        console.log("");
    }
2.执行过程
    1.先进行变量的初始化i = 0
    2.进行条件判断 0 < 100 == true
    3.执行console.log("...")
    4.i++
    5.条件判断 1 >= 100  == false
    6.结束循环
  例:
   // 0 ... 9 == 10
    var num = prompt("请输入你需要的次数")
    for(var i = 0; i < num; i++) {
        console.log("好好学习,天天向上!!!")
    }
    console.log(i) // 10
3.for循环和if结合
 例1:
  1 + 2 + 3 + 4 + 5 + 6 ... 100相加结果
    var sum = 0;
    for(var i = 1; i <= 10; i++) {
        if ( i % 10 != 3){
            sum += i
        } 
    }
    console.log(sum)
 例2:
  1 - 100之间所有数的平均值
    var sum = 0;
    var average = 0;
    for(var i = 1; i <= 100; i++) {
        sum += i;
    }
    average = sum / 100;
    console.log(average)
 例3:
 求1-100 之间所有的偶数和奇数的和
    var evenTotal = 0;
    var oddTotal = 0;
    for(var i = 1; i <= 100; i++) {
        if(i % 2 == 0) {
            evenTotal += i
        }else {
            oddTotal += i;
        }
    }
    console.log("1-100之间所有偶数之和", evenTotal)
    console.log("1-100之间所有奇数之和", oddTotal)
 例4:
 求1-100之间所有能被3整除的数字之和
    var result = 0;
    for(var i = 1; i <= 100; i++) {
        if(i % 3 == 0) {
            result += i;
        }
    }
    console.log("1-100之间能被3整除的数字之和", result)
 例5:
   // 输入班级有多少个学生,并且输入每个学生的成绩,最终求出平均值及其总成绩
    var num = prompt("请输入班级的总人数") // 5
    var sum = 0;
    var average = 0;
    for(var i = 0; i < num; i++) {
        var score = prompt("请输入第" + i + "学生的成绩")
        sum = sum + parseFloat(score)
    }
    average = sum / num;
    console.log("班级总的成绩是", sum)
    console.log("班级平均分为", average);
 例6:
 打印一行星星
  var num = prompt("请输入星星的个数")
    var str = "";
    // for(var i = 1; i <= num; i++) {
    for(var i = 0; i < num; i++) {
        str += "☆"
    }
    console.log(str)
 例7:
 for双重循环
 打印10行10列星星
  var str = "";
    for(var i = 0; i < 10; i++) {
        for(var j = 0; j < 10; j++) {
            str += "☆"
        }
        str += "\n"
    }
    console.log(str)
    
 例8:
    打印n行n列星星
    var rows = prompt("请输入输出的行数")
    var cols = prompt("请输入输出的列数")
    var str = '';
    for(var i = 0; i < rows; i++) {
        for(var j = 0; j < cols; j++) {
            str += "☆"
        }
        str += "\n"
    }
    console.log(str)
 例9:
   倒三角形
    var str = "";
    for(var i = 0; i < 10; i++) {
        for( var j = i; j < 10; j++) {
            str += "☆"
        }
        str += "\n"
    }
    console.log(str)
 例10:
   乘法口诀
   var str = "";
    for(var i = 1; i <= 9; i++) {
        for(var j = 1; j <= i; j++) {
            str += j + "x" + i + "=" + i * j + "\t"
        }
        str += "\n"
    }
    console.log(str)

while 循环

     var num = 1;
   
   
    while(num <= 10) {
        num+= num;
        console.log("输出num", num);
    }
   console.log("num最后的值", num)
   如果对num不做任何的处理,这种循环就会无休止的执行下去,这种循环叫做死循环
   如果num为false,则直接跳出循环
   
 例1:
    打印1个人的 1 - 100岁
    var i = 1;
    while(i <= 100) {
       console.log("这个人今年" + i);
      i++;
     }
 例2:
 1-100所有整数和
    var sum = 0;
     var i = 1;
     while(i <= 100) {
        sum += i;
         i++;
     }
     console.log(sum)
dowhile
    先执行循环体,在进行判断!!!
        do {
            // 循环体
        }while(表达式)
    
    var i = 1;
    do {
        i++
    }while(i <= 100)

    do while 循环体最少会执行一次
例:
1.打印 1- 100岁
    var i = 1;
    do {
        console.log("这个人今年" + i + "岁了")
        i++;
    }while(i <= 100)

  2.1-100整数之和
    var sum = 0;
    var i = 1;
    do {
        sum += i;
        i++
    }while(i <= 100)
    console.log(sum)
continue
 求: 1 + 2 + 3 .. + 100。 中间不加50这个整型值
 
  var sum = 0
    for(var i = 1; i <= 100; i++) {
     
        if(i == 50) {
            // 如果等于50时,就不让下面的代码进行执行!!!
            // 继续,跳出本次循环!!!
            continue;
        }
        sum += i
    }
    console.log(sum)
    
 例:
     求 1 -100之间,除了能被9整除之外的整数和
    var sum = 0;
    for(var i = 1; i <= 100; i++) {
        if(i % 9 == 0) {
            continue
        }
        sum += i;
    }

    console.log(sum)
continue
   break 中断!!!
    for(var i = 0; i < 10; i++) {
        if(i == 5) {
            // 它是跳出整个循环
            break;
        }
    }

    console.log("这是")

  例:
   找到20 - 100的第一个能被 9 整除的数
    for(var i = 20; i <= 100; i++) {
        if(i % 9 == 0) {
            console.log("这是第一个能被9整除的数:", i);
            break;
        }
    }

本文纯属个人学习记录!不严谨的地方请不要相信!