4609: 【GESP2403二级】小杨的日字矩阵
内存限制:64 MB
时间限制:1.000 S
评测方式:文本比较
命题人:
提交:5
解决:3
题目描述
小杨想要构造一个$N×N$ 的日字矩阵($N$ 为奇数),具体来说,这个矩阵共有$N$ 行,每行$N$ 个字符,其中最左列、最右列都是 $|$ ,而第一行、最后一行、以及中间一行(即第$\frac{N+1}{2}$ 行)的第$2\sim N-1$ 个字符都是$-$ ,其余所有字符都是半角小写字母 $x$ 。例如,一个$N=5$ 的日字矩阵如下:
|---| |xxx| |---| |xxx| |---|
请你帮小杨根据给定的 打印出对应的“日字矩阵”。
输入
一行一个整数 $N$($5\le N\le 49$ ,保证 为奇数)。
输出
输出对应的“日字矩阵”。
请严格按格式要求输出,不要擅自添加任何空格、标点、空行等任何符号。你应该恰好输出$N$ 行,每行除了换行符外恰好包含$N$ 个字符,这些字符要么是 $-$ ,要么是 $|$ ,要么是 $x$ 。你的输出必须和标准答案完全一致才能得分,请在提交前仔细检查。
请严格按格式要求输出,不要擅自添加任何空格、标点、空行等任何符号。你应该恰好输出$N$ 行,每行除了换行符外恰好包含$N$ 个字符,这些字符要么是 $-$ ,要么是 $|$ ,要么是 $x$ 。你的输出必须和标准答案完全一致才能得分,请在提交前仔细检查。
样例输入 复制
5
样例输出 复制
|---|
|xxx|
|---|
|xxx|
|---|
提示
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
for (int i = 0; i < n; ++i) {
for (int j = 0; j < n; ++j) {
char ch;
if (j == 0 || j == n - 1) {
ch = '|';
} else if (i == 0 || i == n - 1 || i == n / 2) {
ch = '-';
} else {
ch = 'x';
}
cout << ch;
}
cout << endl;
}
return 0;
}