1. 程式人生 > >判斷上三角矩陣

判斷上三角矩陣

7-1 判斷上三角矩陣 (10 分)
上三角矩陣指主對角線以下的元素都為0的矩陣;主對角線為從矩陣的左上角至右下角的連線。

本題要求編寫程式,判斷一個給定的方陣是否上三角矩陣。

輸入格式:
輸入第一行給出一個正整數T,為待測矩陣的個數。接下來給出T個矩陣的資訊:每個矩陣資訊的第一行給出一個不超過10的正整數n。隨後n行,每行給出n個整數,其間以空格分隔。

輸出格式:
每個矩陣的判斷結果佔一行。如果輸入的矩陣是上三角矩陣,輸出“YES”,否則輸出“NO”。

輸入樣例:
2
3
1 2 3
0 4 5
0 0 6
2
1 0
-8 2
輸出樣例:
YES
NO

#include <stdio.h>
#define TY 10
int main(int argc, const char * argv[]) {
    int T,n,i,h,l,j,p;
    int bpd[TY][TY];
    scanf("%d",&T);
    for(i=1;i<=T;i++)
    {
        scanf("%d",&n);

        for(h=0;h<=n-1;h++)
        {
            for(l=0;l<=n-1;l++)
                scanf("%d",&bpd[h][l]);
        }
        j=0;
        p=1;
        for(h=1;h<=n-1;h++)
        {
            for(l=0;l<=j;l++)
            {
                if(bpd[h][l]!=0)
                    p=0;
                p=p*1;
            }
            j++;
        }
        if(p==1)
            printf("YES\n");
        if(p==0)
            printf("NO\n");
        }
    return 0;
}