JavaScript的循环结构和经典题目
一、JS中的循环结构
循环结构的执行步骤
1、声明循环变量;
2、判断循环条件;
3、执行循环体操作;
4、更新循环变量;
5、然后循环执行2-4,直到条件不成立,跳出循环。
while循环()中的表达式,运算结果可以是各种类型,但是最终都会转为真假,转换规则同if结构。代码如下:
var num = 1;
while (num<=10){//2、判断循环条件;
document.write(num+"<br />");//3、执行循环体操作;
num++;//4、更新循环变量;
}
while循环特点:先判断后执行;
do-while循环:先执行再判断,即使初始条件不成立,do-while循环至少执行一次;代码如下
var num = 10;
do{
document.write(num+"<br />");
num--;
}while(num>=0);
document.write(num);
for循环
1、for有三个表达式:①声明循环变量;②判断循环条件;③更新循环变量;
三个表达式之间,用;分割,
for循环三个表达式都可以省略,但是两个;缺一不可。
2、for循环的执行特点:先判断再执行,与while相同
3、for循环三个表达式都可以有多部分组成,第二部分多个判断条件用&& ||连接,第一三部分用逗号分割;代码如下:
for (var num =1; num<=10; num++) {
document.write(num+" <br />");
}
循环控制语句
1、break:跳出本层循环,继续执行循环后面的语句。
如果循环有多层,则break只能跳出一层。
2、continue:跳过本次循环剩余的代码,继续执行下一次循环。
①对与for循环,continue之后执行的语句,是循环变量更新语句i++;
②对于while、do-while循环,continue之后执行的语句,是循环条件判断;
因此,使用这两个循环时,必须将continue放到i++之后使用,否则,continue将跳过i++进入死循环。代码如下:
var i=1;
while (i<=20){
document.write(i+"<br />");
i++;
}
document.write("循环结束");
二、求水仙花数(三位数)
while循环写法,代码如下:
var i=100,a,b,c;
while (i<=999){
a=parseInt(i/100);
b=parseInt(i%100/10);
c=parseInt(i%10);
if(a*a*a+b*b*b+c*c*c==i) document.write(i+"<br />");
i++;
}
for循环写法,代码如下:
for(var i=100,a,b,c;i<=999;i++){
a=parseInt(i/100);
b=parseInt(i%100/10);
c=parseInt(i%10);
if(a*a*a+b*b*b+c*c*c==i) document.write(i+"<br />");
}
运行结果:
三、斐波那切数列
while循环,代码如下:
var a = 1;
var b = 1;
var i = 1;
var c;
document.write(a+","+b+",");
while (i<=10){
c=a+b;
a=b;
b=c;
i++;
document.write(c+",");
}
for循环,代码如下:
var a = 1;
var b = 1;
var c;
document.write(a+","+b+",");
for(var i =1;i<=10;i++){
c=a+b;
a=b;
b=c;
i++;
document.write(c+",");
}
运行结果: