嵌套循环打印三角形需外层控行、内层控符:直角三角形每行i个;等腰三角形第i行空格n-i-1、星号2i+1;空心三角形仅边界打;倒三角形第i行空格i、星号2(n-i)-1。

用嵌套循环打印三角形,核心是用外层循环控制行数,内层循环控制每行的字符(如星号 * 或空格)数量。不同形状对应不同的数量规律,关键在理清“第 i 行该打几个空格、几个星号”。
直角三角形(左对齐)
最基础的形态:每行星号数等于行号(从1开始),无需空格。
- 外层循环 i 从 1 到 n(含)
- 内层循环打印 i 个
* - 每行结束后换行
等腰三角形(居中)
每行由空格 + 星号组成,星号数为奇数,空格数逐行递减。
- 第 i 行(i 从 0 开始):空格数 = n - i - 1,星号数 = 2 * i + 1
- 一行内先拼接空格字符串,再拼接星号字符串
- 例如 n=4 时,第2行(i=2)输出:
" " + "*****"→" *****"
空心三角形
只在边界位置打印星号,内部全为空格。
- 首行和末行:全星号
- 中间行:仅第1个和最后一个位置是
*,其余为 - 需在内层循环中加判断:
if j == 0 or j == (2*i) or i == n-1:
倒三角形(顶点朝下)
与等腰三角形类似,但空格和星号的变化方向相反。
- 第 i 行(i 从 0 开始):空格数 = i,星号数 = 2*(n - i) - 1
- 例如 n=4,第1行(i=1):空格1个,星号5个 →
" *****" - 注意内层循环顺序不影响逻辑,但影响可读性


















