判断上三角矩阵

主对角线  ( 行 大于  列)上的元素是0  ;因为最后要先输入数组,后输出判断结果,所以运用到数组把结果存起来

#include
int input(int arr[][10])
{
    int i = 0;
    int j = 0;
    int m = 0;
    scanf("%d",&m);
    for( i = 0 ; i < m ; i++)
    {
        for( j = 0 ; j < m ; j++)
        {
        scanf("%d",&arr[i][j]);
        }
    }
    return m;
}
int panduan(int arr[][10], int n)
{
    int i = 0;
    int j = 0;
    int flag = 1;
    int count = 0;
    for( i = 0 ; i < n ;i++)
    {
        for( j = 0 ; j < n ; j++)
        {
            if( i > j )
            {
                if( arr[i][j] == 0 )
                {
                    flag = 1;
                }
                else
                {
                    flag = 0;
                }
            }
        }
    }
    if( flag == 1)
        return 1;
    else
        return 0;
}
int main()
{
    int i = 0;
    int n = 0;
    int k = 0;
    int m = 0;
    int z = 0;
    int (*pa)[10];
    int str[100] = { 0 };
    int arr[10][10] = { 0 };
    scanf("%d",&n);
    while(1)
    {
        if( i != n )
        {
            m = input(arr);
            str[i++] = panduan(arr,m);
        }
        else
            break;
    }
    for( k = 0 ; k < i ; k++)
    {
        if( str[k] == 1 )
            printf("YES\n");
        else
            printf("NO\n");
    }
    return 0;
}

你可能感兴趣的:(算法,数据结构)