PTA判断上三角形行列阵
方法一
#include <stdio.h>
int main()
{
int t,m=0,n,i,j,k;
int a[100][100];
scanf("%d",&t);
for(i=1;i<=t;i++)
{
scanf("%d",&n);
for(j=0;j<n;j++)
{
for(k=0;k<n;k++)
{
scanf("%d",&a[j][k]);
if(a[j][k]==0&&j>k)//上三角型矩阵判断条件
m++;//计算矩阵中符合上三角矩阵的元素个数
}
}
if(m==(n*n-n)/2)//满足此条件即可判断是上三角矩阵
printf("YES\n");
else
printf("NO\n");
m=0;
}
return 0;
}
方法二
#include <stdio.h>
#include <stdlib.h>
int main()
{
int k,t,n,i,j,s=1;
scanf("%d",&t);
int a[16][16];
for(k=0;k<t;k++){
scanf("%d",&n);
for(i=0;i<n;i++){
for(j=0;j<n;j++){
scanf("%d",&a[i][j]);//遍历数组
}
}
for(i=0;i<n;i++){
for(j=0;j<i;j++){
if(i>j&&a[i][j]!=0)
{
s=0;//若有一个条件不满足,即非上三角型矩阵
break;//退出循环,判定
}
}
}
if(s==1)
printf("YES\n");
if(s==0)
printf("NO\n");}
return 0;
}