思路:先用二维数组存储数据,设置一个初始值为0的key值标记矩阵的状态,然后遍历矩阵,若发现对角线以下存在不为0的元素,则将key值置为-1,遍历完后检查key值,若key==0则判定为上三角矩阵,反之则判定为非上三角矩阵:
#include<stdio.h>
int main(){
int n,a[10][10],i,j,key=0;
scanf("%d",&n);
for(i=0;i<n;i++)
for(j=0;j<n;j++)
scanf("%d",&a[i][j]);
for(i=1;i<n;i++)
for(j=0;j<i;j++){
if(a[i][j]!=0)
key=-1;
}
if(key==0) printf("YES\n");
else printf("NO\n");
}
京公网安备 11010502036488号