if控制语句、switch控制语句、for循环语句、while循环语句
文章目录
流程控制, 选择结构
程序的运行流程有三种(三种结构)
- 顺序结构
- 选择结构
- if
- switch
- 循环结构
if条件判断
单选结构
语法:
if(条件){
语句;
}
执行逻辑:如果条件为真,则语句执行,否则,程序继续执行if之外的语句。
var score = prompt('请输入js成绩');
if (score > 98) {
console.log("奖励手机一部!");
}
分支结构
语法:
if(条件) {
语句一;
}else {
语句二;
}
执行逻辑:如果条件成立,执行语句一,如果条件不成立执行语句二
分支语句对成立和不成立都进行了语句处理
二选其一结构
//如果js成绩高于98分,则奖励一台iPhone,否则,奖励写代码;
var js = 100;
if (js > 98) {
console.log("奖励Iphone");
} else {
console.log("编写代码");
}
多条件分支
语法:
if(条件) {
语句一;
}else if(条件){
语句二;
}else if(条件){ //可多条
语句三;
}
…
else { //可省略
语句n
}
执行逻辑:从上到下,依次判断,如果成立,则执行对应的语句,之后立刻跳出多条分支结构
多选其一结构
//成绩不低于90为优秀,不低于82为良好,不低于60为及格,否则为不及格。
var score = 95;
if (score >= 90) {
console.log("优秀");
} else if (score >= 80) {
console.log("良好");
} else if (score >= 60) {
console.log("及格");
} else {
console.log("差");
}
switch选择结构
语法:
-switch(表达式) {
case 值:
语句;
break; //可省略
case 值:
语句二;
break;
…
default:
语句n
break;
}
如果没有写break,程序跳转到条件成立的选项后,执行对应的语句,之后继续向下执行,不再判断是否相同,直至遇见break跳出或执行完。
default可以放在case之前,但是必须使用break语句跳出选择。
循环结构
常见的循环有三种类型:while、do-while、for
while循环
语法:
while(条件表达式){
循环操作
}
执行逻辑:条件表达式为真,循环操作执行,为假,循环操作不执行
特点:先判断,再执行
循环的分析思路:根据问题拆分出,循环条件 = 初始值 + 条件,循环操作 = 循环体 + 迭代
//输出50份试卷
var i = 1;
while (1 <= 50){
console.log("打印第" + i + "份试卷");
i++
}
do-while循环
语法:
do{
//循环体
}while(条件表达式);
执行逻辑:循环体执行一次后,再进行判断,如果条件为真,则循环继续,否则循环结束。
特点:先执行,再判断。
//先进行编写程序,再判断是否合格
var answer = '';
do {
console("上机编写程序");
answer = prompt("合格了吗(y/n)");
}while(answer == 'n');//程序进行循环的条件
for循环
for(初始值; 条件判断; 更新循环变量){
//循环体
}
执行逻辑: bug调式查看
特点:先判断,再执行, 大多数使用次数明确的循环
//输出一百句好好学习
for(var i = 0;i < 100;i++){
console.log("好好学习");
}
//死循环
for(;;){
//循环体
}
//问题:循环输入某同学一阶段考试的5门课成绩,并计算平均分
var sum = 0;
//循环录入成绩,并累加
for (var i = 0; i < 5; i++) {
var score = parseInt(prompt("请输入第" + (i + 1) + "门课成绩"));
//累加
sum += score;
}
var avg = sum / 5;
console.log("avg = " + avg);
双重循环
一个循环结构中包含另一个完整的循环结构
内循环一次,外循环一次
//打印矩形
//控制行
for (var i = 0; i < 5; i++) {
//控制列
for (var j = 0; j < 5; j++) {
document.write("* ");
}
document.write("<br/>");
}
break语句
在switch中break的含义为:跳出选择结构
在循环中break的含义为:跳出循环结构
在循环中的影响:
1、循环结束,循环次数可能没有完成
2、break之后的语句没有机会执行
总结:
break影响循环次数,可能循环没有执行完毕
break后的语句的执行,大多情况break和选择语句配合使用
continue
描述:
continue:跳过循环体中剩余的语句而执行下一次循环
只能用在循环语句中
循环继续,不影响循环的执行次数,但影响continue之后的语句是否被执行
如果条件成立,则continue之后的语句不会被执行
//问题:求1-10之间的偶数之和,使用continue语句
var sum = 0;
for (var i = 1; i <= 10; i++) {
//不是偶数,循环继续
if(i % 2 != 0){
continue;
}
sum += i; //累加
}
console.log("sum = " + sum);