叠框

#include <stdio.h>
#include <stdbool.h>

int main() {
int n;
char inner,outer;
bool flag=true;
while(scanf("%d %c %c",&n,&inner,&outer) != EOF){
if(flag == true){
flag = false;
}else{
printf("\n");
}
char matrix[80][80]={0};
int length = 1;
int x,y;
char curChar = inner;
for(length=1,x=n/2,y=n/2;length<=n;length=length+2,--x,--y){
for(int i=x,j=y;i<x+length;++i){
matrix[i][j] = curChar ;
}
for(int i=x,j=y;j<y+length;++j){
matrix[i][j]=curChar;
}
for(int i=x+length-1,j=y;j<y+length;++j){
matrix[i][j]=curChar;
}
for(int i = x,j=y+length-1;i<x+length;++i){
matrix[i][j]=curChar;
}
if(curChar == inner){
curChar=outer;
} else{
curChar=inner;
}
}
if(n!=1){
matrix[0][0]=' ';
matrix[0][n-1]=' ';
matrix[n-1][0]=' ';
matrix[n-1][n-1]=' ';

}
for(int i=0;i<n;++i){
printf("%s\n",matrix[i]);
}

}
}
posted @ 2023-02-07 17:42  zzzzzwh  阅读(28)  评论(0)    收藏  举报