B4037 [GESP202409 二级] 小杨的 N 字矩阵

· · 题解

欢迎报名洛谷网校,期待和大家一起进步!

:::align{center} :::

本题考察多层循环(循环嵌套)结构。

对于输出方阵的题目,通常使用二重循环进行,外层循环 i 控制是第 i 行,内层循环 j 控制是第 j 列。

先来看 N 字矩阵的要求:矩阵的第一列和最后一列都是 +,这意味着可以使用 j == 1 || j == m 判断是否输出 +。此外,矩阵的行数和列数相同的时候也输出 +,因此还需要或上 i == j 作为判断输出 + 的条件。

参考代码(仅展示关键部分):

for (int i = 1; i <= m; i++) {
    for (int j = 1; j <= m; j++) {
        if (/*第一个条件*/ || /*第二个条件*/ || /*第三个条件*/)
            cout << '+';
        else
            cout << '-';
    }
    cout << endl;
}