zoukankan      html  css  js  c++  java
  • 分支结构/循环结构

    一、if语句

      例1:

    // 满30减15
    var price = 35;
    if (price > 30){
        price = price - 15;
    }
    console.log('应该付款'+price);
    结果:20

      例2:

    // 声明变量保存年龄,如果年龄大于60,再原来的基础上减5,打印最终年龄
    var age = 61;
    if (age>60){
        age = age - 5;
    }
    console.log(age)
    结果:56

      例3:

    // 声明两个变量分别保存用户名和密码,如果用户名是root,并且密码是123456,打印登录成功;
    var username = 'root';
    var password = '123456';
    if (username='root' && password='123456'){
        console.log('success');
    }

    // 逻辑短路的写法
    (username = 'root' && password='123456')&& console.log('success')

    结果:success

      例4:

    // 如果年龄大于等于18岁,打印“成年人”,否则打印“未成年人”
    // 注意:如果if后的语句中只有一行,是可以省略大括号
    var age = 21;
    if (age>=18){
        console.log('成年人');
    }
    结果:成年人

      

    // 在if语句的条件表达式中,有一些值默认为false
    0 NaN underdined null

     

    二、if_else语句

      例1:

    // 如果应付27,余额够,支付成功,否则提示:余额不足,请充值
    var money = 50;
    if (money>=27){
        console.log('支付成功');
    }else{
        console.log('余额不足,请充值!');
    }
    结果:支付成功

      例2:

    //应付
    var money1 = 27;
    //余额
    var money2 = 25;
    if (money2 >= money1){
        console.log('支付成功');
    }else{
        console.log('余额不足,请充值!');
    }
    结果:
    余额不足,请充值!

      例3:

    // 声明个性签名,如果有内容,则打印,否则打印“这个家伙很懒”
    var signature = '';
    if (signature == ''){
        console.log('这家伙很懒');
    }else{
        console,log(signature);
    }

            例4:

    // 练习:使用弹出提示框分别输入商品的价格和数量,判断商品总价是否满500,如果满500打八折;
    
    // 获取输入商品价格和数量
    var price = prompt('please input price');
    var count = prompt('please input price');
    
    // 获取商品的总价
    var total = price*count;
    
    // 判断总价是否满500
    if(total>=500){
        total=total*0.8;
        console.log(total);
    }else{
        console.log(total);
    }
    
    var money = 600;
    if(money>=total){
        console.log('支付成功');
    }else{
        console.log('支付失败');
    }

     三、if - else的嵌套

    语句

    // else-if
    语句0;
    if(条件表达式1){
        语句1;
    }else if{
        语句2;
    }else if{
        语句3;
    }else{
        语句n;
    }

    例子1:

    // 银行卡内存款分类
    // 10以下      普通客户
    // 10-100      白银客户
    // 100-1000    黄金客户
    // 1000以上    钻石客户
    
    var money = 35;
    if(money<10){
        console.log('普通客户');
    }else if(money<100){
        console.log('白银客户');
    }else if(money<1000){
        console.log('黄金客户');
    }else{
        console.log('钻石客户');
    }

    swich-case语句

    语句

    语句0
    switch(表达式){
        case1:  // 如果表达式值是1
            语句1;
            break;  // 终止,不会再往后执行其他语句
        case2:
            语句2;
            break;
        casen:
            语句n;
            break;
        default:
            语句n+1;
    }

    例1:

    var status = 3;
    switch(status){
        case 1:
            console.log('待付款');
            break;
        case 2:
            console.log('代发货');
            break;
        default:
            console.log('状态码不存在');
    }

    while循环(先判断,后做)

    例1:

    // 打印10次hello
    // 初始值0,每次加1,小于10
    var i = 0;
    while(i<10){
        console.log('hello');
        i++;
    }

    例2:

    // 使用无限循环形式来计算1-10所有数字相乘的结果
    
    var i = 1;
    var sum = 1;
    while(true){
        if(i==11){
            break;
        }
        console.log(i);
        sum *= i;
        i++;
    }

    例3:

    // 打印1-100间的奇数
    var i = 1;
    while(i<100){
        if(i%2 == 1){
            console.log('hello');
        }
        i++;
    }

     例4:【03_break.js】

    // 练习:使用变量保存1个数字,使用弹出提示框的形式输入数字,如果数字猜大了,提示big,如果小了,提示小了,如果对了,提示对了,结束循环
    
    // 使用变量保存1个数字
    var num=10;
    // 弹出提示框
    while(true){
        // 获取用户输入的值
        var num2 = prompt('please input a number');
        // 如果输入的值大于保存的值
        if(num2>num){
            alert('big');
        }else if(num2<num){
            alert('small');
        }else{
            alert('right');
            // 结束循环
            break;
        }    
    }

    【03_break.html】

    <script src="03_break.js"></script>

    do-while循环(先做,后判断)

    语法:

    do{
    循环体
    }while(循环条件);

    例1:不管循环条件是否为true,都会执行一次循环体

    // 打印1-10
    var i=1;
    do{
        console.log(i);
        i++;
    }while(i<=10);

    例2:

    // 打印1-50间的偶数
    var i=50;
    do{
      if(i%2==0){
        console.log(i);
    } i
    --; }while(i>=1);

    例3:

    // 打印100,95,90,85,80,75,70;
    var i=100;
    do{
        console.log(i);
        i=i-5;
    }while(i>=70);

    例4:

    // 计算1-100间所有整数的和
    var i=1;
    var sum=0;
    do{
        sum+=i;
        i++;
    }while(i<=100);

    例5:

    // 计算1-100间所有能被7整除的数字的和
    var i=1;
    var sum=0;
    do{
        if(i%7==0){
            sum+=i;
        }
        i++;
    }while(i<=100);
    console.log(sum);

    例6:

    // 计算1-10之间所有数字的乘积
    var i=1;
    plus=1;
    do{
        plus*=i;
        i++;
    }while(i<=10);
    console.log(plus);

    例7:

    // 练习:计算10-20之间所有能被3整除的数字的乘积
    var i=10;
    plus=1
    do{
        if(i%3==0){
            plus*=i;
        }
        i++;
    }while(i<20);
    console.log(plus);

    例8:

    // 声明变量保存密码123456,循环弹出提示框输入密码,如果正确,提示输入成功,否则继续弹出
    var password='123456';
    do{
        // 弹出提示框输入密码
        var num=prompt('input password');
        if(num==password){
            console.log('success');
            break;
        }while(true);

    for循环

     语法:

    // for循环1-10
    for(初始;循环条件;i的变化){
        循环体
    }

    例1:

    // 打印1-10之间所有的整数
    for(var i=1;i<=10;i++){
        console.log(i);
    }

    例2:

    // 计算1-100间所有整数的和
    
    for(var i=1,sum=0;i<=100;i++){
        sum+=i;
    }
    console.log(sum);

    例3:

    // 打印20-50间所有的奇数
    for(var i=20;i<=50;i++){
        if(i%2==1){
            console.log(i);
        }
    }

    例4:

    // 打印80,77,74,....50
    for(var i=80;i>=50;i-=3){
        console.log(i);
    }

    例5:

    // 计算1-10之间所有数的乘积
    for(var i=1,sum=1;i<=10;i++){
        sum*=i
    }
    console.log(sum);

    例6:

    // 打印本世纪(2000-2100)所有的闰年
    for(var i=2000;i<=2100;i++){
        // 判断i是否为闰年
        // 四年一润,百年不润,四百年再润
        if(i%4==0 && i%100 !=0 || i%400==0){
            console.log(i);
        }
    }

    例7:

    // 打印99乘法表第5行
    // 1*5=5  2*5=10  3*5=15  4*5=20  5*5=25
    var str='';
    for(var i=1;i<=5;i++){
        str+=i+'*5='+(i*5)+' ';
    }
    console.log(str);

    例8:

    // 练习:计算1/10+2/9+3/8+4/7+5/6.....10/1
    for(var i=1,j=10,sum=0;i<10;i++,j--){
        sum+=i/j;
    }
    console.log(sum);

    break:跳出循环

    continue:跳过本次循环,执行下一次循环

    例1:

    // 打印0 1 2 4 5 6
    for (var i = 0; i < 7; i++) {
        if(i==3){
            continue;
        }
        console.log(i);
    }

    例2:

    // 计算1-100间所有偶数的和(遇到奇数跳过)
    for(var i=1,sum=0;i<=100;i++){
        if(i%2==1){
            continue;
        }
        sum+=i;
    }
    console.log(sum);

    例3:

    // 打印1,2,5,7,10,11,13,14,17,...98
    for(var i=1;i<=100;i++){
        // 能被3或4整除的数
        if(i%3==0 || i%4==0){
            continue;
        }
        console.log(i);
    }

    例4:

    // 计算新中国成立后一共有多少个闰年
    for(var i=1949,sum=0;i<=2019;i++){
        // 如果满足闰年,sum+1
        if(i%4==0 && i%100!=0 || i%400==0){
            sum++;
        }
    }
    console.log(sum);

    例5:

    // 打印本世纪的前10个闰年
    for(var i=2000,sum=0;i<2100;i++){
        if(i%4==0 && i%100!=0 || i%400==0){
            sum++;
            console.log(i);
        }
        if(sum==10){
            break;
        }
    }
    console.log(sum);

     循环嵌套

     

  • 相关阅读:
    spring security 获取当前用户
    spring data jpa deleteInBatch 导致异常 java.lang.StackOverflowError
    大数据 分布式文件系统 HDFS概念
    angular9 ng start正常,build部署后无法正常加载页面
    springboot使用rocketmq RocketMQMessageListener参数
    spring boot使用rocketmq
    Teamcenter RAC 调用查询
    Teamcenter RAC 查找数据集并获取数据集中文件
    带有编译时和运行时的简记
    前台线程和后台线程、线程安全
  • 原文地址:https://www.cnblogs.com/hd-test/p/11700042.html
Copyright © 2011-2022 走看看