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

编写生成大型字母X的脚本求助:当前仅能输出V形

解决打印大写X的脚本问题

嘿,我来帮你搞定这个大写X的打印问题!你已经能打出V形,说明已经摸透了一半的逻辑,只需要补上另一侧的对称星号就能完成完整的X啦。

核心逻辑拆解

对于一个有n行的大写X,每一行的星号位置是对称的:

  • 第i行(从0开始计数),第一个星号在第i列的位置
  • 第二个星号在第n-1 -i列的位置
  • 当i等于n-1 -i时(也就是中间那一行),两个位置重叠,只需要打印一个星号就行

代码示例(Python)

# 获取用户输入的行数
row_count = int(input("请输入要打印的行数: "))

# 逐行生成X的每一行
for row in range(row_count):
    line = ""
    for col in range(row_count):
        # 判断当前列是否需要打印星号
        if col == row or col == (row_count - 1 - row):
            line += "*"
        else:
            line += " "
    print(line)

为什么这个能生效?

  • 外层循环遍历每一行,row是当前行的索引
  • 内层循环遍历每一列,col是当前列的索引
  • 关键判断条件:col == row负责画出X的左斜线,col == row_count -1 - row负责画出右斜线,两者结合就形成了完整的X
  • 中间行时,两个条件会同时触发,但因为是同一个位置,只会添加一个星号,不会重复

如果你的V形代码是只实现了右斜线的部分,只需要把左斜线的判断条件加进去,就能轻松转成X形啦。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 04:00:22