三大结构/JS一

算法五大特性:输入0个多个  输出1或多个 确定性 可行性 有穷性
四要求:健壮性(靠if--else实现)  可读性  正确性  时间效率高存储量低

三大结构

顺序结构:
1.输入语句
2.输出语句
3.赋值

选择结构:

if更加全面 如下
单分支:
if(判断条件){
    满足条件执行的判断语句
}

双分支:
if(判断条件){
    执行语句
}
else{
    执行语句
}

多分支:
if(判断条件){
    执行语句
}
else  if(判断条件){
    执行语句
}
else{
    执行语句
}

<script>
     var input=parseInt(prompt("请输入星期几:"))  /*弹出输入框*/
    if (input<=0 || input>7){
        alert('别瞎输')
    }
    else{
        if (input<6&&input>0){
            alert('workday!')
        }
        else{
            alert('weekend')
        }
    }
</script>

switch更加清晰,处理流程清晰的选择,如下:

switch(条件){#条件最终结果只能是整型或字符串,是===类型也要一样
    case 表达式1:
        代码;
        break;
    case 表达式2:
        代码;
        break;
    case 表达式3:
        代码;
        break;
    default:   相当于else 处理剩余的情况
        代码
}

case和default可以任意位置  并且default可有可无

输入成绩判断分数等级,代码如下:

if-else if-else实现 

    var input=parseInt(prompt('请输入分数'))
    if(input<=100&&input>=90){
        console.log('优秀')
    }
    else if(input>=80&&input<90){
        console.log('良好')
    }
    else if(input>=70&&input<80){
        console.log('普通')
    }
    else if(input>=60&&input<70){
        console.log('及格')
    }
    else if(input<60){
        console.log('出去')
    }
    else{
        console.log('拜拜')
    }

 switch实现

  a=input/10
  switch (parseInt(a)) {
        case 10:     //case后面的表达式其实是switch括号里的结果,不是表达式。
            console.log('优秀')
            break
        case 9:
            console.log('优秀')
            break
        case 8:
            console.log('良好')
            break
        case 7:
            console.log('普通')
            break
        case 6:
            console.log('及格')
            break
        default:
            console.log('出去!')
    }

循环结构

三种:for while do-while
三要素:1.初始值 2.循环控制条件 3.步长增量

do-while 先执行一次,后判断。(用在游戏上,让他先玩一次)

while 先判断后执行

for (赋初值;控制条件;步长){
    循环体;
}

var sum=0
for(var i=0(表达式1);i<=100(表达式2);i++(表达式3)){
    sum+=i;(表达式4)
}
执行顺序12432432

var i=0,sum=0;
while(i<=100){
    sum+=i;
    i++;
}

for用在哪里 循环次数明确的情况 (例:顺序查找,次数明确)
while可以在循环次数不明确的情况(例:二分查找,不知道查找的次数)


赋初值
do{
    循环代码;
    增量;
}while(控制条件);

求从1到100的和:

  sum=0
  for (var i=1;i<=100;i++ ){
       sum+=i
  }
  console.log(sum)
i=1
sum=0
while (i<101){
     sum+=i
     i+=1
}
console.log(sum)
start=parseInt(prompt('输入开始值'))
end=parseInt(prompt('输入结束值'))
console.log((start+end)*(end-start+1)/2)

猜你喜欢

转载自blog.csdn.net/qq_39112101/article/details/88799677