2023年9月C++二级真题
不许抄袭,一旦发现,直接清空经验!
题目描述 Description
小杨想要构造一个N×N的X字矩阵(N为奇数)﹐这个矩阵的两条对角线都是半角加号+,其余都是半角减号-。例如,一个5×5的X字矩阵如下:
请你帮小杨根据给定的N打印出对应的“X字矩阵”。
输入描述 Input Description
一行一个整数N(5≤N ≤49,保证N为奇数)。
输出描述 Output Description
输出对应的“X字矩阵”。
请严格按格式要求输出,不要擅自添加任何空格、标点、空行等任何符号。你应该恰好输出N行,每行除了换行符外恰好包含N个字符,这些字符要么是+,要么是-。
样例输入 Sample Input
5
样例输出 Sample Output
+---+
-+-+-
--+--
-+-+-
+---+
上代码
#include <iostream>
using namespace std;
char x[100][100];
int main(){
int n;
cin>>n;
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
if(i==j){
x[i][j]='+';
}
}
}
for(int i=n;i>=1;i--){
for(int j=n;j>=1;j--){
if(i==n-j+1){
x[i][j]='+';
}
}
}
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
if(x[i][j]=='+'){
}else{
x[i][j]='-';
}
}
}
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
cout<<x[i][j];
}
cout<<endl;
}
return 0;
}