题目描述
绘制一个X(用*号表示线),其中长、宽、对角线的长度(即可容纳的*号个数)均为同一个奇数n。
输入描述
一个正奇数n(3≤n≤99)。
输出描述
输出一个X。注意行末不要有多余的空格。
样例1
输入
复制
3
输出
* *
*
* *
样例2
输入
5
输出
* *
* *
*
* *
* *
代码:
#include<iostream>
using namespace std;
int main(){
int n;
cin>>n;
char num[n][n];
for(int i=0;i<n;i++){
int numspace=i<(n/2)?n-i:i+1; //上一半,下一半(行末)
for(int j=0;j<numspace;j++){
num[i][j]=' '; //初始化
}
}
for(int i=0;i<n;i++){
for(int j=0;j<n;j++){
if(i==j||j+i==n-1){ //对角线
num[i][j]='*';
}
}
}
for(int i=0;i<n;i++){
int numspace=i<(n/2)?n-i:i+1;//上一半,下一半(行末)
for(int j=0;j<numspace;j++){
cout<<num[i][j];
}
cout<<endl;
}
return 0;
}