解题思路:用二维字符数组存储,再遍历一遍判断是否是倒过来相同
#include<bits/stdc++.h>
using namespace std;
int main(){
char c;
int n;
cin>>c>>n;
char a[n][n];
getchar();//除去换行符
for(int i=0;i<n;i++){
for(int j=0;j<n;j++){
a[i][j]=getchar();//这里不能用cin>>a[i][j],会读取不到空格
if(a[i][j]!=' ')//省去输出时还要重新替换符号
a[i][j]=c;
}
getchar();//除去换行符
}
bool index=true;
for(int i=0;i<n&&index;i++){
for(int j=0;j<n;j++){
if(a[i][j]!=a[n-1-i][n-1-j]){
index=false;
break;
}
}
}
if(index)
cout<<"bu yong dao le"<<endl;
for(int i=n-1;i>=0;i--){
for(int j=n-1;j>=0;j--){
cout<<a[i][j];
}
cout<<endl;
}
}
运行结果: