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

如何反转由o和x组成的字符方阵,得到指定的x排布效果

解决方案

你可以选择以下任意一种方式修改现有代码实现需求:

方案1:修改对角线判断条件

原来的代码判断i == j(主对角线)输出x,现在只需要把判断条件改为反对角线匹配即可,修改后的完整代码如下:

size = int(input("Size of the square: "))

for i in range(size):
    line = ""

    for j in range(size):
        # 行号+列号等于边长-1时,为反对角线位置
        if i + j == size - 1:
            line += "x"
        else:
            line += "o"

    print(line)

方案2:直接反转每行输出

如果不想修改内层的判断逻辑,也可以在打印每行的时候直接反转字符串,改动量极小:

size = int(input("Size of the square: "))

for i in range(size):
    line = ""

    for j in range(size):
        if i == j:
            line += "x"
        else:
            line += "o"
    # 字符串切片反转后打印
    print(line[::-1])

两种方案运行后输入5都可以得到你要的输出效果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 18:15:07