js第三天

程序的三种结构:顺序结构、选择结构(条件分支结构)、循环结构

循环结构语句:while    do-while     for

  • while语句

 示例:控制台输出5-1

// while循环控制台输出1-10
        var n=1
        while(n<=10){
            console.log(n)
            n++
        }

  •  do-while 语句

示例:

// do-while循环控制台输出1-10
        var n=1
        do{
            console.log(n)
            n++
        }while(n<=10)
  • for循环语句

示例:控制台输出5-1

var n= 5
        for (n = 5; n >=1; n--) {
            console.log(n)
        }

for循环示例:

//使用for循环正序输出 1 - 10
    var n=1
    for(n=1;n<=10;n++){
        console.log(n)
    }


//打印出1-100里所有的偶数
    var i=1
    for(i=1;i<=100;i++){
        if(i%2==0){
            console.log(i)
        }
    }


//1+2+3+4+...100的和
    var m=1
    var num=0
    for(m=1;m<=100;m++){
         num=m+num
    }
    console.log(num);
  • break语句:break循环语句一起使用,作用:结束循环         switch-case里面也会使用break

//有五个包子,我吃到第三个就饱了,结束吃包子
  for(var i=1;i<=5;i++){
       console.log('我吃了第'+i+'个包子')
          //判断吃了几个包子
          if(i === 3){
              //结束循环
              break
            }
        }
  • continue语句:结束本次循环,cotinue后面的代码不执行,继续下一次循环

//吃五个包子,第三个掉了,继续吃第四个,第五个
<script>
        //吃五个包子,第三个掉了,继续吃第四个,第五个
        var i=1
        for(i=1;i<=5;i++){
            if(i === 3){
                console.log('这是第三个包子,掉了,我不吃');
                continue
            }
            console.log('我吃了一个包子')
        }
    </script>
  • 计数器:count

 // 打印1-100内能被4整除的前五个数

        var count=0  //计数器变量
        var n=1
        for(n=1;n<=100;n++){
            if(n % 4==0){
                console.log(n)
              count++
            }
            if(count === 5){
                break

            }

        }

 示例:打印100-200内能被6整除的前3个数

var count=0  //计数器变量
        var j=100
        for(j=100;j<=200;j++){
            if(j % 6==0){
                console.log(j)
              count++
            }
            if(count === 3){
                break

            }

        }

将内容显示到页面上:使用 document.write

换行:document.write('<br>')

//打印出1000-2000年中所有的闰年,并以每行四个数的形式输出(使用document.write()打印) 计数器,
        var count1=0
        for(var a=1000;a<=2000;a++){
            if((a%4==0 && a%100!=0) || a%400==0){
                document.write(a+'  ')
                count1++
            }
            if(count1==4){
                document.write('<br>')
                count1=0
            }
        }

双重for循环:循环的嵌套:外层循环一次,内层就要循环完

示例1: 

 编程思想:双重for循环            外层循环---》打印行数          内层循环---》打印每行元素

关键点:计算每行打印多少个元素,根据外层循环变量再确定

分析:
第一行           打印1个*
   2                2
   3                3




        var n
        var m
        for(n=1;n<=6;n++){
            for(m=1;m<=n;m++){
                document.write('*')
            }
            document.write('<br>')

        }

 示例2:9x9乘法表的实现

// 9x9乘法表
        for(var i=1;i<=9;i++){
            for(var j=1;j<=i;j++){
                document.write(i+'x'+j+'='+ i*j +'    ')
            }
            document.write('<br>')

        }

示例三:打印*号三角形

   var n=5
        for(var i=1;i<=n;i++){
            // 打印空格
            for(var j=1;j<=(n-i);j++){
                document.write('&nbsp;')
            }
            // 打印*
            for(var m=1;m<=(2*i-1);m++){
                document.write('*')
            }
            document.write('<br>')
        }
  • 累加型运算:

 

示例:求1 - 1/2 + 1/3 - 1/4 + 1/5 - 1/6 .... +1/99 - 1/100 和

方法一:

 var sum = 0
        var i
        for (i = 1; i <= 100; i++) {
            if (i % 2 == 0) {
                sum -=(1/i)
            }else{
                 sum += (1/i)
            }
        }
         document.write(sum)

方法二:
var sum = 0
        var i
        for (i = 1; i <= 100; i++) {
            if (i % 2 == 0) {
                sum =sum+(1/(-1*i))
            }else{
                 sum =sum+1/i
            }
        }
        document.write(sum)

 示例二:入职薪水10K/月,每年涨幅5%,50年后工资多少?(累加求和)

 // 入职薪水10K/月,每年涨幅5%,50年后工资多少?(累加求和)
        var sum =10000*12
        for(var year=2;year<=50;year++){
            sum=sum+sum*0.05
        }
        document.write(sum.toFixed(2))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值