You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用while循环打印倒三角星号图案代码运行异常求助

代码存在的核心问题

  • 死循环问题:内层j和k的自增逻辑位置完全错误
    你的j = j + 1和k = k + 1写在了最外层while i>0的末尾,根本没有进入对应的内层循环作用域。j初始值为1,内层while j < 3循环体内没有对j做自增,j永远等于1,循环永远不会退出;同理k在while k < i的循环体内也没有自增,k永远等于0,会一直打印星号。
  • 嵌套逻辑错误:打印空格的循环和打印星号的循环应该是同级关系,你现在把打印星号的k循环嵌套在了打印空格的j循环内部,完全不符合输出逻辑。
  • 空格计数逻辑错误:你需要打印的前置空格数等于4 - i(第一行i=4,0个空格;第二行i=3,1个空格,以此类推),你当前写的j < 4-1固定最多打印2个空格,无法匹配每行的空格需求。
  • 缩进错误:第一行i = 4前有多余缩进,会直接触发语法报错。

修正后的可运行代码

i = 4
while i > 0:
    # 打印前置空格
    j = 0
    while j < 4 - i:
        print(end = " ")
        j += 1
    # 打印星号
    k = 0
    while k < i:
        print("*", end = " ")
        k += 1
    print()
    i -= 1

内容的提问来源于stack exchange,提问作者MasonMount

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 13:57:04