时间限制: 1 Sec 内存限制: 128 MB
提交: 37 解决: 20
[提交][状态][命题人:yangchunyi]
题目描述
编写程序判断n阶矩阵是否对称,对称时返回1,不对称时返回0。
主函数中由键盘读入n和n阶矩阵,并调用函数进行判断,如果对称输出“Yes”,否则输出“No”。
(编程提示:函数的形参可以是行指针或列指针)。
输入
第一行为矩阵的行列数n。(0<n<=20)
接下来输入的n行数据中,每行包含n个整数,整数之间以一个空格分开。
输出
如果对称输出“Yes”,否则输出“No”。
样例输入
4
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
样例输出
Yes
提示
对称矩阵是指以主对角线为对称轴,各元素对应相等的矩阵。
#include<bits/stdc++.h>
using namespace std;
int main(){
int a[100][100],flag=0,i,j,n;
cin>>n;
for(i=0;i<n;i++)
for(j=0;j<n;j++)
cin>>a[i][j];
for(i=0;i<n;i++){
for(j=0;j<n;j++){
if(a[i][j]!=a[j][i])
flag=1;
break;
}
}if(flag==0) cout<<"Yes";
else cout<<"No";
return 0;
}