js三角形
2019-06-28 本文已影响0人
码农也会修真
实现用♡写出三角形
for (var i = 1; i <= 5; i++) {
for (var j = 1; j <= i; j++) {
document.write('♡' + " ");
}
document.write("<br/>");
}
运行结果如下图所示
在其中定义了两层 for 循环,分别为外层循环和内层循环,外层循环用于控制打印的行数。内层循环用于打印“ * ”,每一行的“ * ”个数逐行增加,最后输出一个三角形。下面分步骤进行详细地讲解,具体如下:
第一步,在第 1行代码将 i 初始化为 1,条件 i<=5 为true,首次进入外层循环的循环体。
第二步,在第 2 行代码将 j 初始化为 1,由于此时 i 的值为 1,条件 j<=i (1<=1 )为 false,内层循环结束,执行后边的代码,打印换行符。
第三步,执行第 1行代码中外层循环的操作表达式 i++, 将 i 的值自增为 1.
第四步,执行第 1 行代码中的判断条件 i<=5(1<=5),判断结果为 true,进入外层循环的循环体,继续执行内层循环。
第五步,执行第 2 行代码中的判断条件 j<=i(1<=1),首次进入内层循环的循环体,打印一个“♡”。
第六步,执行第 2 行代码中内层循环的操作表达式 j++ ,将 j 的值自增为 2。
第七步,执行第 2 行代码中的判断条件 j<=i(2<=1) ,判断结果为 false,内层循环结束,执行后面的代码,打印换行符。
第八步,执行第 1 行代码中外层循环的操作表达式 i++, 将 i 的值自增为 2。
第九步,执行第 1 行代码中的判断条件 i<=5,判断结果为 true,进入外层循环的循环体,继续执行内层循环。
第十步,由于 i 的值为 2,内层循环会执行两次,即在第二行打印两个“ ♡ ”,在内层循环结束时会打印换行符。
(i=2,j=1,j<=i 为true,打印 “ ♡ ” ;
j++,j=2,j<=i 为true,再打印一个 “ ♡ ” ;
j++,j=3,j<=i 为false,内层循环结束,执行后边的代码,打印换行符)
第十一步,依次类推,在第 3 行会打印 3 个“ ♡ ”,逐行递增,直到 i 的值为 5 时,外层循环的判断条件 i<=5 结果为 false ,外层循环结束,整个程序也就结束了。