程序的三种结构:顺序结构、选择结构(条件分支结构)、循环结构
循环结构语句:while do-while for
-
while语句
示例:控制台输出5-1
// while循环控制台输出1-10
var n=1
while(n<=10){
console.log(n)
n++
}
-
do-while 语句
示例:
// do-while循环控制台输出1-10
var n=1
do{
console.log(n)
n++
}while(n<=10)
-
for循环语句
示例:控制台输出5-1
var n= 5
for (n = 5; n >=1; n--) {
console.log(n)
}
for循环示例:
//使用for循环正序输出 1 - 10
var n=1
for(n=1;n<=10;n++){
console.log(n)
}
//打印出1-100里所有的偶数
var i=1
for(i=1;i<=100;i++){
if(i%2==0){
console.log(i)
}
}
//1+2+3+4+...100的和
var m=1
var num=0
for(m=1;m<=100;m++){
num=m+num
}
console.log(num);
-
break语句:break循环语句一起使用,作用:结束循环 switch-case里面也会使用break
//有五个包子,我吃到第三个就饱了,结束吃包子
for(var i=1;i<=5;i++){
console.log('我吃了第'+i+'个包子')
//判断吃了几个包子
if(i === 3){
//结束循环
break
}
}
-
continue语句:结束本次循环,cotinue后面的代码不执行,继续下一次循环
//吃五个包子,第三个掉了,继续吃第四个,第五个
<script>
//吃五个包子,第三个掉了,继续吃第四个,第五个
var i=1
for(i=1;i<=5;i++){
if(i === 3){
console.log('这是第三个包子,掉了,我不吃');
continue
}
console.log('我吃了一个包子')
}
</script>
-
计数器:count
// 打印1-100内能被4整除的前五个数
var count=0 //计数器变量
var n=1
for(n=1;n<=100;n++){
if(n % 4==0){
console.log(n)
count++
}
if(count === 5){
break
}
}
示例:打印100-200内能被6整除的前3个数
var count=0 //计数器变量
var j=100
for(j=100;j<=200;j++){
if(j % 6==0){
console.log(j)
count++
}
if(count === 3){
break
}
}
将内容显示到页面上:使用 document.write
换行:document.write('<br>')
//打印出1000-2000年中所有的闰年,并以每行四个数的形式输出(使用document.write()打印) 计数器,
var count1=0
for(var a=1000;a<=2000;a++){
if((a%4==0 && a%100!=0) || a%400==0){
document.write(a+' ')
count1++
}
if(count1==4){
document.write('<br>')
count1=0
}
}
双重for循环:循环的嵌套:外层循环一次,内层就要循环完
示例1:
编程思想:双重for循环 外层循环---》打印行数 内层循环---》打印每行元素
关键点:计算每行打印多少个元素,根据外层循环变量再确定
分析:
第一行 打印1个*
2 2
3 3
var n
var m
for(n=1;n<=6;n++){
for(m=1;m<=n;m++){
document.write('*')
}
document.write('<br>')
}
示例2:9x9乘法表的实现
// 9x9乘法表
for(var i=1;i<=9;i++){
for(var j=1;j<=i;j++){
document.write(i+'x'+j+'='+ i*j +' ')
}
document.write('<br>')
}
示例三:打印*号三角形
var n=5
for(var i=1;i<=n;i++){
// 打印空格
for(var j=1;j<=(n-i);j++){
document.write(' ')
}
// 打印*
for(var m=1;m<=(2*i-1);m++){
document.write('*')
}
document.write('<br>')
}
-
累加型运算:
示例:求1 - 1/2 + 1/3 - 1/4 + 1/5 - 1/6 .... +1/99 - 1/100 和
方法一:
var sum = 0
var i
for (i = 1; i <= 100; i++) {
if (i % 2 == 0) {
sum -=(1/i)
}else{
sum += (1/i)
}
}
document.write(sum)
方法二:
var sum = 0
var i
for (i = 1; i <= 100; i++) {
if (i % 2 == 0) {
sum =sum+(1/(-1*i))
}else{
sum =sum+1/i
}
}
document.write(sum)
示例二:入职薪水10K/月,每年涨幅5%,50年后工资多少?(累加求和)
// 入职薪水10K/月,每年涨幅5%,50年后工资多少?(累加求和)
var sum =10000*12
for(var year=2;year<=50;year++){
sum=sum+sum*0.05
}
document.write(sum.toFixed(2))