当前位置: 首页 > article >正文

【Web前端开发精品课 HTML CSS JavaScript基础教程】第二十六章课后题答案

文章目录

      • 问题1:
      • 问题2:
      • 问题3:
      • 问题4:
      • 问题5:
      • 问题6:
      • 问题7:
      • 问题8:
      • 问题9:

问题1:

下面哪个是JavaScript循环语句正确的写法?

选项: A. if(i<10;i++)
B. for(i=0;i<10)
C. for i=1 to 10
D. for(i=0;i=10;i++)

解析:
JavaScript的for循环语法是:


for (初始化; 条件; 增量)
  • A选项:if 语句是条件判断语句,不是循环语句。
  • B选项:缺少了循环体,也没有增量部分。
  • C选项:不符合 for 语法规则
  • D选项:正确的 for 循环语法,尽管条件 i=10 会导致循环立即终止。

正确答案: D. for(i=0;i<=10;i++)

问题2:

下面有关循环结构的说法中,不正确的是( )。

选项: A. do-while的循环体至少无条件执行一次
B. for 循环是先执行循环体,后判断表达式
C. while(!e); 这一句代码中的!e等价于e!=0
D. 在实际开发中,我们应该尽量避免“死循环”

解析:

  • A选项:do-while循环无论条件是否满足,循环体至少执行一次。
  • B选项:for 循环是先判断表达式,再执行循环体。
  • C选项:while(!e); 语句中的!e不等价于e!=0!e即当 e 为0时,执行循环;而在判断语句 e!=0 中,在 e 为0时,是不进入循环的
  • D选项:死循环是不合理的,通常要避免无限循环的情况。

正确答案: B. for 循环是先执行循环体,后判断表达式

​ C.while(!e); 语句中的!e等价于e!=0

问题3:

下面有一段JavaScript程序,其中while循环执行的次数是( )。

var i = 0;
while (i=1) i++;

选项: A. 一次也不执行
B. 执行一次
C. 无限次
D. 有语法错误,不能执行

解析:
while(i=1) 语句中的i=1是赋值操作,而不是比较操作。这个赋值操作会将i赋值为1,且赋值操作的结果为1,因此会一直执行循环体,导致无限循环。

正确答案: C. 无限次

问题4:

下面有一段JavaScript程序,运行之后变量i的值为( )。

var i = 8;
do {
  i++;
} while(i>100);

选项: A. 8
B. 9
C. 100
D. 101

解析:
do-while循环至少执行一次循环体。在第一次执行时,i的值为8,循环体中的i++使i变为9。然后,循环条件判断i > 100,此时i为9,条件不成立,因此循环结束。

正确答案: B. 9

问题5:

下面有一段 JavaScript 程序,输出结果是()

var sum = 0;
var i = 0;
for (; i < 5; i++) {
  sum += i;
}
document.write(sum);

选项: A. 9
B. 10
C. 11
D. 程序报错

解析:

让我们逐步分析代码的执行过程:

  1. 初始化:sum = 0i = 0

  2. for 循环开始,判断条件 i < 5

    是否成立:

    • 第1次循环,i = 0sum += 0sum = 0
    • 第2次循环,i = 1sum += 1sum = 1
    • 第3次循环,i = 2sum += 2sum = 3
    • 第4次循环,i = 3sum += 3sum = 6
    • 第5次循环,i = 4sum += 4sum = 10
  3. 循环结束,因为 i 增加到 5,条件 i < 5 不再满足。

最终,sum 的值是 10

因此,输出结果是 10

正确答案: B. 10

问题6:

下面有一段 JavaScript 程序,输出结果是()

var i = 6;
switch(i)
{
    case 5: i++;
    case 6: i++;
    case 7: i++;
    case 8: i++;
    default: i++;
}
document.write(i);

选项: A. 6
B. 7
C. 8
D. 10

解析:

  1. 变量 i 初始化为 6。

  2. switch(i)
    

    中开始执行,根据

    i = 6
    

    匹配

    case 6:
    

    • case 6: 匹配成功,执行 i++i 变为 7。
    • 没有 break 语句,因此会继续执行后面的 case 语句。
    • 执行 case 7:i++i 变为 8。
    • 执行 case 8:i++i 变为 9。
    • 执行 default:i++i 变为 10。
  3. 最终,i 的值是 10。

正确答案: D. 10

问题7:

利用三种循环来计算 1+2+3+……+100 的值

while循环:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        var n = 1;
        var sum = 0;
        while(n <= 100)
        {
            sum += n;
            n++;
        }
        alert(sum);
    </script>
</head>
<body>
</body>
</html>

do……while 循环:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        var n = 1;
        var sum = 0;
        do{
            sum += n;
            n++;
        }while(n<=100);
        alert(sum);
    </script>
</head>
<body>
</body>
</html>

for 循环:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        var n = 1;
        var sum = 0;
        for(var n = 1; n <=100; n++){
            sum += n;
        }
        alert(sum);
    </script>
</head>
<body>
</body>
</html>

问题8:

使用循环语句输出下面的菱形图案

image-20250220184936059

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        for (var i = 1; i <= 4; i++) {
            for(var j = 1; j <= 4-i; j++) {
                document.write("-");
            }
            for(var k = 1; k <= 2*i-1; k++) {
                document.write("*");
            }
            document.write("<br>");
        }

        for (var i = 4; i >= 1; i--) {
            for(var j = 1; j <= 4-i; j++) {
                document.write("-");
            }
            for(var k = 1; k <= 2*i-1; k++) {
                document.write("*");
            }
            document.write("<br>");
        }
    </script>
</head>
<body>
</body>
</html>

image-20250220184946099

问题9:

输出九九乘法表,格式如下:

image-20250220185046470

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        for (var i = 1; i < 10; i++) {
            for (var j = 1; j <= i; j++) {
                document.write(j + "*" + i + "=" + i * j + "      ");
            }
            document.write("<br>");
        }
    </script>
</head>
<body>
</body>
</html>

image-20250220185332627


http://www.kler.cn/a/559859.html

相关文章:

  • 爬虫与反爬-Ja3指纹风控(Just a moment...)处理方案及参数说明
  • 39、深度学习-自学之路-自己搭建深度学习框架-3、自动梯度计算改进,并且进行了每一段代码的注释,方便理解程序的运行过程
  • 一篇docker从入门到精通
  • C#快速幂算法
  • 【玩转 Postman 接口测试与开发2_020】(完结篇)DIY 实战:随书示例 API 项目本地部署保姆级搭建教程(含完整调试过程)
  • 服务器系统都更新到windowsserver2025了
  • echarts找不到了?echarts社区最新地址
  • 深度学习每周学习总结Y1(Yolov5 调用官方权重进行检测 )
  • 电池管理系统(BMS)架构详细解析:原理与器件选型指南
  • C# 将非托管Dll嵌入exe中(一种实现方法)
  • 交通物联网:概念、历史、现状与展望
  • 使用 Power Automate 转换 HTML to PDF
  • 内外网隔离文件传输解决方案|系统与钉钉集成+等保合规,安全提升70%
  • 通俗理解Test time Scaling Law、RL Scaling Law和预训练Scaling Law
  • 【零基础实战】STM32控制DRV8833电机驱动详解
  • LLaMA中的微调方法
  • STM32的HAL库开发---ADC采集内部温度传感器
  • [leetcode] 动态规划 - 入门之爬楼梯与打家劫舍
  • 【大模型】量化、剪枝、蒸馏
  • 华为guass在dbever和springboot配置操作