# 1.针对代码,下列选项说法错误的是?(选择一项)
**A.**let i=0;在循环开始前执行
**B.**i<100;是定义循环的条件
**C.**i++;是在循环已被执行之后执行
**D.**document.write(i);是在i++执行之后执行
本题考察的是for循环的语法。
for循环的基本语法是:for(语句1;语句2;语句3){ //代码块} ;
执行顺序是:先执行语句1,然后执行语句2。语句2是循环的条件,条件成立才会进入循环,执行花括号里面的代码块。当代码块执行完毕,则执行语句3。语句3执行完毕,开始进入下一次循环。但是注意下一次循环就不会执行语句1了,即语句1只在开始循环前执行一次。
var i=0;(语句1)在循环开始前执行,A说法正确;i<100;(语句2)是定义循环的条件,B说法正确;i++是在循环已被执行之后执行,C说法正确;document.write(i);是在i++执行之后执行,D说法错误。
所以本题答案为D。
# 2.页面上输出99 97 95 93 91 89 87 85………………………………1,也就是1-99的奇数,但是是从大到小的输出,下列哪个循环语句可以实现?(选择一项)
**A.**let i=0;在循环开始前执行
**B.**i<100;是定义循环的条件
**C.**i++;是在循环已被执行之后执行
**D.**document.write(i);是在i++执行之后执行
本题考察的是for循环语句的运用。
从99到1,只取奇数,那么每个数之间是相差2的,循环后的执行语句是i=i-2;数字是倒数,所以要从最大的开始,即变量i初始值要为99。倒数最小为1,所以当条件大于等于1时执行循环语句,一旦小于1了,就停止循环。所以for(var i=99;i>=1;i=i-2)可以实现题目要求的效果,本题答案为A。
# 3.小云分数59,小课分数90,据以下条件代码依次判断两个人的分数,页面会输出什么?(选择一项)
**A.**Oh,你弱爆了 5颗星
**B.**3颗星 4颗星
**C.**Oh,你弱爆了 4颗星
**D.**1颗星 5颗星
本题考察的是if语句和循环语句的综合应用。
根据条件判断,当成绩小于60分时,页面会输出“oh,你弱爆了“,当成绩大于80并且小于等于100时,页面会输出5颗星。所以本题答案为A。
# 4.根据以下循环代码,判断该循环循环几次后会停止循环?(选择一项)
# 5.以下注释里面的代码运行后会发生什么情况?(选择两项)
**A.**页面上什么也打印不出来
**B.**造成死循环,无限制的打印下去
**C.**页面中一直打印数字1
**D.**控制台会报错
# 6.代码的运行结果是?(选择一项)
**A.**页面中输出1,2,3,4,5,6,7,8,9
**B.**页面一直输出1
**C.**页面陷入死循环,可能导致浏览器崩溃
**D.**页面中输出1,2,3,4,5,6,7,8,9,10
参考解析:
本题考察的是while循环的语法及应用。
while语句在执行时,i永远都是1,条件永远都成立,所以页面陷入死循环,可能导致浏览器崩溃。
所以本题答案为C。
# 7.下列选项中关于break与continue说法正确的是? (选择两项)
**A.**break语句可以立即退出循环
**B.**break语句结束本次循环,继续开始下一次
**C.**continue语句立即退出循环,并结束
**D.**continue语句结束本次循环,继续开始下一次
本题考察的是break与continue的使用。
break语句会立即退出结束循环,并不再执行。所以A说法正确,B说法错误;
continue语句只是结束本次循环,会进行下一次循环。所以D说法正确,C说法错误;
本题答案为AD。
# 8.代码运行结果是?(选择一项)
**A.**0,1,2,3
**B.**1,2,4,5,6,7,8,9
**C.**1,2
**D.**0,1,2
本题考察的是break的应用,正确答案为D。
break语句会立即退出循环,并结束,不再循环。本题代码中,当i分别为0、1、2时,依次输出0、1、2;当i为3时,符合if判断,执行break跳出循环,并不再执行后面的语句。
所以本题答案为D。
# 9.代码运行结果是?(选择一项)
**A.**0,1,2,3
**B.**0,1,2,4,5,6,7,8,9
**C.**9
**D.**10
本题考察的是continue的应用。
continue语句只是结束本次循环,后面的循环还会继续,所以当i等于3时,不会执行num++,跳出本次的循环,继续下一次循环,当i=4时会继续执行num++,直到i<10结束。i 的值,由0到9是10次循环,sum从0开始,所以sum正好添加到9。
本题答案为C。
# 10.关于while和do-while下列说法错误的是?(选择一项)
**A.**do-while循环至少要被循环一次,然后再去判断条件
**B.**如果条件不成立,do-while循环一次也不执行
**C.**如果条件不成立,while循环一次也不执行
**D.**如果条件成立,do-while和while都会执行
本题考察的是while循环和do-while循环的区别。
do-while循环的特点:不管条件是否成立,循环都会先执行一次。
while循环的特点:只有条件成立了,才会进行循环。
所以B中"如果条件不成立,do-while循环一次也不执行"说法错误,本题答案为B。
# 11.下面代码的运行结果是?(选择一项)
**A.**页面上没有任何显示
**B.**页面上显示一个hello world
**C.**页面上显示9个hello world
**D.**页面陷入死循环
本题考察的是do-while语句的语法及应用。
do-while循环的特点:不管条件是否成立,do里面的内容都会执行一次,然后再去判断条件是否成立。
所以本题代码中,不管条件是否成立,hello world是肯定会被输出一次的。然后再看条件,条件是i>10,这个条件不成立,所以只会输出一次hello world。
本题答案为B。
# 12.编程练习
根据效果图,用循环写出代码。
1、先写出初始的变量值i=1
2、写出它执行循环的条件i<=9
3、每循环一次后变量值的增加i++
4、输出内容到页面中,注意变量和字符串的拼接问题
# 13.编程练习
我们学习了while循环,补充代码,通过while循环来计算1加到10的结果吧,累加的结果是55
1、写出循环中变量的条件,i<=10。
2、写出1加到10的计算表达式,sum+=i
3、循环的最后记得i++
# 14.编程练习
](https://imgchr.com/i/w7PdkF)
#wrap{
text-align: center;
}
<div id="wrap"></div>
let oWrap = document.getElementById("wrap");
let h = "";
for (let n = 1; n <= 20; n++) {
h += "<p>"
for (let m = 0; m < 2 * n - 1; m++) {
h += "❤"
}
h += "</p>"
}
oWrap.innerHTML = h;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<style>
#wrap{
text-align: center;
color: tomato;
}
</style>
</head>
<body>
<div id="wrap"></div>
<script>
//总共需要39行
//39行 1个爱心 38行 三个爱心 37行五个爱心
let oWrap = document.getElementById("wrap");
let h = "";
for (let n = 1; n <= 39; n++) {
h += "<p>";
if (n <= 20) {
for (let m = 0; m < 2 * n - 1; m++) {
h += "❤";
}
} else {
for (let m = 0; m < (40 - n) * 2 - 1; m++) {
h += "❤";
}
}
h += "</p>";
}
oWrap.innerHTML = h;
</script>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# 15.编程练习
# 16.编程练习
<style>
* {
margin: 0;
padding: 0;
}
#wrap {
width: 710px;
}
span {
display: inline-block;
width: 70px;
height: 35px;
line-height: 35px;
border: 1px solid blue;
text-align: center;
font-size: 14px;
margin: 3px;
}
</style>
</head>
<body>
<div id="wrap"></div>
<script>
let oWrap = document.getElementById("wrap");
let text = "";
for (let i = 1; i <= 9; i++) {
//外层决定了每一行 i 行号
for (let j = 1; j <= i; j++) {
//内层决定了每一行的个数 j 列号
text += "<span>" + j + "×" + i + "=" + j * i + "</span>";
}
text += "<br>";
}
oWrap.innerHTML = text;
//倒着
<script>
let oWrap = document.getElementById("wrap")
let text = "";
for (let i = 9; i >= 1; i--) {
for (let j = 1; j <= i; j++) {
// i 行号 j 列号
text +="<span>"+ i +"×" + j +"="+ j*i +"</span>"
}
text += "</br>"
}
oWrap.innerHTML = text;
</script>
</script>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
使用table布局
<style>
* {
margin: 0;
padding: 0;
}
#wrap {
width: 710px;
}
td {
display: inline-block;
width: 70px;
height: 35px;
line-height: 35px;
border: 1px solid blue;
text-align: center;
font-size: 14px;
margin: 3px;
}
</style>
</head>
<body>
<table id="wrap"></table>
<script>
let oWrap = document.getElementById("wrap");
let text = "";
for (let i = 1; i <= 9; i++) {
text += "<tr>";
for (let j = 1; j <= i; j++) {
// i 行号 j 列号
text += "<td>" + j + "×" + i + "=" + j * i + "</td>";
}
text += "</tr>";
}
oWrap.innerHTML = text;
</script>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40












