scanf("%d", &n);
int matix[n][n]; //初始化方阵
for (int i = 0; i < n; i++)
for (int j = 0; j < n; j++)
scanf("%d", &matix[i][j]); // 对方阵按行赋值
判断上三角矩阵
输入样例:
3
3
1 2 3
0 4 5
0 0 6
2
1 0
-8 2
3
1 2 3
1 4 5
0 -1 6
输出样例:
YES
NO
NO
YES NO NO
if ((i > j) && matix[i][j] != 0) 核心特判
#includeint main() { int x, n, i = 0, j = 0; scanf("%d", &x); for (i = 0; i < x; i++) { scanf("%d", &n); int matix[n][n], flag = 0; for (int i = 0; i < n; i++) for (int j = 0; j < n; j++) { scanf("%d", &matix[i][j]); if ((i > j) && matix[i][j] != 0)//对于下三角有i>j时值为0 flag = 1; } if (flag) printf("NOn"); else printf("YESn"); } return 0; }



