第一部分、顺序结构
顺序结构
:顺序结构是程序中最基本的结构,程序会按照代码的先后顺序依次执行。
第二部分、分支结构(选择结构)
分支结构(选择结构)
:根据条件来决定是否执行某个分支代码。
1.if结构
if
语句也称为
条件语句
、
单分支语句
,当满足某种条件时,就进行某种处理。
if(condition){
code
}
2.if-else结构
if…else
语句也称为
双分支语句
,当满足某种条件时,就进行某种处理,否则进行另一种处理。
if (condition) {
code1
}else{
code2
}
例:
var k = 21;
if (k%2===0) {
console.log(k + "是偶数!");
}else{
console.log(k + "是奇数!");
}
3.if…else if语句
if…else if
语句也称为
多分支语句
,可针对不同情况进行不同的处理。
if (condition 1) {
code 1
}else if (condition 2) {
code 2
}
...
else if (condition n) {
code n
}
例:
//输入一个学生的成绩,输出成绩的等级
var s = prompt("请输入你的成绩:");
var k = null;
if(s>=90){
k = "A";
}else if (s>=80) {
k = "B";
}else if (s>=70) {
k = "C";
}else if (s>=60) {
k = "D";
}else{
k = "E";
}
console.log("成绩等级为"+k);
4.switch语句
switch
语句也是多分支语句,功能与
if…else if
语句类似,不同的是它只能
针对某个表达式的值
作出判断,从而决定执行哪一段代码。
switch(表达式){
case 1: code 1;break;
case 2: code 2;break;
...
default :
code n;
}
注意:
- “表达式”的运算结果的类型不能是浮点型
- “常量”:类型必须和”表达式”的运算结果的类型一致
- break:跳出switch结构
- default:是关键字,表示所有case情况之外的情况,可以有也可以没有。位置是任意的,通常放在所有case之后。
例:
var s = prompt("请输入你的成绩:");
var t = parseInt(s/10);
var k = null;
switch(t){
case 10:
case 9: k = "A";break;
case 8: k = "B";break;
case 7: k = "C";break;
case 6: k = "D";break;
default:
k = "E";
}
console.log("成绩等级为"+k);
5.条件表达式构成的选择结构
- 条件运算符: ? 是一个三目运算符
- 条件表达式: 表达式1?表达式2:表达式3
- 运算过程:先运算表达式1,如结果为true,选择表达式2进行运算,并把运算结果作为整个条件表达式的值;如结果为false,选择表达式3进行运算,并把运算结果作为整个条件表达式的值。
例:
var t = prompt("请输入一个整数");
t%2===0?console.log(t+"是偶数!"):console.log(t+"是奇数!");
第三部分、循环结构
循环结构
:根据条件来决定是否重复执行某一段代码。
1.while循环
while
循环:”当”型循环,”当”条件为
true
时,执行循环。
whlie(condition){
循环体语句;
}
例1
:分别求100以内的奇数和和偶数和。
方法一:
var m=1,n=2;
var sum1=0,sum2=0;
while (m<100) {
sum1=sum1+m;
m=m+2;
}
while (n<=100) {
sum2=sum2+n;
n=n+2;
}
console.log("100以内的奇数和为"+sum1);
console.log("100以内的偶数和为"+sum2);
方法二:
var i=1;
var sum1=0,sum2=0;
while (i<=100) {
if (i%2!==0) {
sum1=sum1+i;
i++;
}else{
sum2=sum2+i;
i++;
}
}
console.log("100以内的奇数和为"+sum1);
console.log("100以内的偶数和为"+sum2);
例2
:判断一个数是否是素数。
方法一:
var n = prompt("请输入一个整数:");
var i=2;
var flag=true;
while (i<n) {
if (n%i===0) {
flag=false;
break;
}
i++;
}
if (flag) {
console.log(n+"是素数");
}else{
console.log(n+"不是素数");
}
方法二:
var n = prompt("请输入一个整数");
var i=2;
while (i<n) {
if (n%i===0) {
break;
}
i++;
}
if (i>=n) {
console.log(n+"是素数!");
} else {
console.log(n+"不是素数!");
}
2.do…while循环
do…while
语句会无条件地执行一次循环体中的代码,然后再判断条件,根据条件决定是否循环执行。
do {
循环体语句
} while (condition);
例:
var k = 0;
var flag = true;
do {
if (k%2!==0) {
break;
}
k++;
} while (flag);
console.log("k="+k);
注意:
-
”
do
“是关键字,必须与
while
结合使用,不能单独使用。 - 无论条件是否为真,循环体语句至少执行一次。
3.for循环
for
语句是最常用的循环语句,它适合循环次数已知的情况。
for(初始化变量;条件表达式;操作表达式){
循环体语句;
}
- 三个表达式都可以省略,但是表达式之间的分号不能省略。
- 初始化变量:给循环变量、其他变量进行初始化。
- 条件表达式:控制循环体语句是否执行。
- 操作表达式:使循环趋向结束的语句。
例
:用for循环求1到100的和。
var sum=0;
for(i=1;i<=100;i++){
sum=sum+i;
}
console.log(sum); //sum=5050
4.循环嵌套
循环嵌套
:在一个循环的内部再套一个或多个循环。
var i,j,k=0;
for(i=1;i<=10;i++){
for(j=1;j<=10;j++){
k++;
}
}
console.log("k=",k); //结果k=100
- 外循环每循环一次,内循环必须全部做完。
第四部分、continue和break
1.continue
continue
关键字可以在
for、while
以及
do…while
循环体中使用,它用来立即跳出本次循环,也就是跳过了
continue
后面的代码,继续下一次循环。
2.break
1.循环语句中使用时,其作用是立即跳出整个循环(将循环结束)。
2. 用在
switch
语句中,当遇到
break
语句时,跳出
switch
语句。