上三角矩阵指主对角线以下的元素都为0的矩阵;主对角线为从矩阵的左上角至右下角的连线。
本题要求编写程序,判断一个给定的方阵是否上三角矩阵。
#include <stdio.h>
int main()
{
int T; //矩阵个数
scanf("%d",&T);
int n; //矩阵阶数
for(int i=1;i<=T;i++)
{
scanf("%d",&n);
int data[n][n];
for(int i=0;i<n;i++)
{ //矩阵赋值
for(int j=0;j<n;j++)
{
scanf("%d",&data[i][j]);
}
}
int flag=0;
for(int i=1;i<n;i++) //从第二行开始
{
for(int j=0;j<=i-1;j++)
{
if(i==j)continue; //i=j时是处于对角线上的数
if(data[i][j]!=0)
{
flag=1;
break;
}
}
}
if(flag==0)printf("YES\n");
else printf("NO\n");
}
}