福倒了,emmm…一开始想用reverse函数逆转二维数组,但是操作中发现涉及到二维数组的指针问题,只能逆转每一行,没有找到逆转列的方法.所以又重新采用了比较,第一个与最后一个比较,一旦出现不同,标志变量改变。
需要注意点地方是:
(1)对应比较的是a[0][1]和a[N-1][N-2],以此类推,规律为比较a[i][j]和a[N-1-i][N-1-j]

#include<iostream>
#include<algorithm>

using namespace std;

int main()
{
	char c;
	int N;
	cin>>c>>N;
	getchar();
	char a[100][100];
	for(int i=0;i<N;i++)
	{//输入每个字符,如果不是空格就放入c 
		for(int j=0;j<N;j++)
		{
			a[i][j]=getchar();
			if(a[i][j]!=' ')
			a[i][j]=c;
		}
		getchar();
	}
	bool flag=true;//设置flag为true表示不用倒了 
	for(int i=0;i<N&&flag;i++)
	{
		for(int j=0;j<N;j++)
		{
			if(a[i][j]!=a[N-1-i][N-1-j])
			{//一旦出现不相等,flag为false 
			flag=false;
			break;
			}
		}
	}
	if(flag)
	{
		cout<<"bu yong dao le\n";
	}
	for(int i=N-1;i>=0;i--)
	{//逆序输出 
		for(int j=N-1;j>=0;j--)
		{
			cout<<a[i][j];
		}
			cout<<endl;
	}
	return 0;
}