-
2022-02-06 19:35:14
上三角矩阵指主对角线以下的元素都为0的矩阵;主对角线为从矩阵的左上角至右下角的连线。
本题要求编写程序,判断一个给定的方阵是否上三角矩阵。
输入格式:
输入第一行给出一个正整数T,为待测矩阵的个数。接下来给出T个矩阵的信息:每个矩阵信息的第一行给出一个不超过10的正整数n。随后n行,每行给出n个整数,其间以空格分隔。
输出格式:
每个矩阵的判断结果占一行。如果输入的矩阵是上三角矩阵,输出“YES”,否则输出“NO”。
输入样例:
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
鸣谢中水七局机电安装分局喻春桥补充数据!
#include<iostream> using namespace std; int ans(int m) { int n,flag=0; for(int i=0;i<m;i++) for(int j=0;j<m;j++) { cin>>n; if(i>j&&n!=0)flag++; } if(flag>0)return 0; else return 1; } int main() { int T,m; cin>>T; for(int i=0;i<T;i++) { cin>>m; if(ans(m)==1)cout<<"YES"<<endl; else cout<<"NO"<<endl; } return 0; }
更多相关内容 -
PTA 补充题库 7-22 判断上三角矩阵
2021-12-26 17:15:12本题要求编写程序,判断一个给定的方阵是否上三角矩阵。 输入格式: 输入第一行给出一个正整数T,为待测矩阵的个数。接下来给出T个矩阵的信息:每个矩阵信息的第一行给出一个不超过10的正整数n。随后n行,每行给出n...上三角矩阵指主对角线以下的元素都为0的矩阵;主对角线为从矩阵的左上角至右下角的连线。
本题要求编写程序,判断一个给定的方阵是否上三角矩阵。
输入格式:
输入第一行给出一个正整数T,为待测矩阵的个数。接下来给出T个矩阵的信息:每个矩阵信息的第一行给出一个不超过10的正整数n。随后n行,每行给出n个整数,其间以空格分隔。
输出格式:
每个矩阵的判断结果占一行。如果输入的矩阵是上三角矩阵,输出“YES”,否则输出“NO”。
输入样例:
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
代码:
#include<stdio.h> #include<math.h> #include<string.h> int main() { int T; scanf("%d", &T);//3 int arr[100][100]; int r[100];//储存最终结果 for (int i = 0; i < T; i++) { int n; scanf("%d", &n);//3 for (int j = 0; j < n; j++) { for (int k = 0; k < n; k++) { scanf("%d", &arr[j][k]); } } int zerocount = (pow(n, 2) - n) / 2;//对角线以下元素的个数 int count = 0;//0的个数 for (int j = 0; j < n; j++) { for (int k = 0; k < n; k++) { if (j > k && arr[j][k] == 0) { count++; } } } if (zerocount == count) { r[i] = 1; } else { r[i] = 0; } } for (int i = 0; i < T; i++) { if (r[i] == 1)printf("YES\n"); else if (r[i] == 0)printf("NO\n"); } return 0; }
-
[PTA]实验7-2-5 判断上三角矩阵
2021-06-08 09:12:34本题要求编写程序,判断一个给定的方阵是否上三角矩阵。 输入格式: 输入第一行给出一个正整数T,为待测矩阵的个数。接下来给出T个矩阵的信息:每个矩阵信息的第一行给出一个不超过10的正整数n。随后n行,每行给出n...上三角矩阵指主对角线以下的元素都为0的矩阵;主对角线为从矩阵的左上角至右下角的连线。
本题要求编写程序,判断一个给定的方阵是否上三角矩阵。
输入格式:
输入第一行给出一个正整数T,为待测矩阵的个数。接下来给出T个矩阵的信息:每个矩阵信息的第一行给出一个不超过10的正整数n。随后n行,每行给出n个整数,其间以空格分隔。
输出格式:
每个矩阵的判断结果占一行。如果输入的矩阵是上三角矩阵,输出“YES”,否则输出“NO”。
输入样例:
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
- 提交结果:
- 源码:
#include<stdio.h> int main(void) { int T; // 待测矩阵的个数 int matrix[10][10]; // 方阵 scanf("%d", &T); for (int n = 1; n <= T; n++) // 依次判断T个方阵是否是上三角矩阵 { int m; // m阶方阵 scanf("%d", &m); for (int i = 0; i < m; i++) //输入数据 { for (int j = 0; j < m; j++) { scanf("%d", &matrix[i][j]); } } int flag = 1; // 标志性变量,为1表示该方阵为上三角矩阵 // 判断其是否是上三角矩阵 // 上三角矩阵的特点:主对角线下方全为0 // 主对角线下方元素特点:行号大于列号 for (int i = 0; i < m; i++) { for (int j = 0; j < m; j++) { if (j >= i) // 列号大于等于行号,继续 { continue; } if (matrix[i][j] != 0) // 主对角线下方但凡有一个元素不为0,则其不是上三角矩阵 { flag = 0; } } } if (flag == 1) // 本次判断的矩阵为上三角矩阵 { printf("YES\n"); } else { printf("NO\n"); // 非上三角矩阵 } } return 0; }
-
PTA.7-44 判断上三角矩阵 (15分)
2019-12-21 23:58:151.思路 (1)输入一个数T,然后输入T个矩阵,(矩阵要放到二维数组中,因为我们从题目中只能得到这...(2)判断上三角形矩阵,只需要满足下三角中的元素均为0 备注:判断和输入并列处于同一个关于T的外循环中 因为我...
1.思路
(1)输入一个数T,然后输入T个矩阵,(矩阵要放到二维数组中,因为我们从题目中只能得到这个二维数组的大小,但T大小未知,我们无法去定义T个二维数组,因此我们想到可以在T循环中定义一个二维数组并且将要输入的方阵放在这个数组中)输入这样一个方阵即对它做出判断,是否为上三角形矩阵。
(2)判断上三角形矩阵,只需要满足下三角中的元素均为0
备注:判断和输入并列处于同一个关于T的外循环中
因为我们是在外循环中定义的a[][];即a[][]仅在这个循环中有意义。
2.错误代码#include <stdio.h> int main() { int t,n,i,j,x; scanf("%d",&t); for(x=0;x<t;x++) { int f=0; scanf("%d",&n); int a[1600][1600]; 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(a[i][j]!=0) { printf("NO\n"); f=1; break; } } } if(f==0) printf("YES\n"); } return 0; }
3.错误分析
(1)数组开的过大,致使出现段错误;
(2)输出错误:
for(i=0;i<n;i++)
{
for(j=0;j<i;j++)
{
if(a[i][j]!=0)
{
printf(“NO\n”);
f=1;
break;
}
}
}
将printf(NO))放在了循环中,会导致一个矩阵输出过多判断结果,应该放到循环外与printf(YES)并列,
4.正确代码#include <stdio.h> int main() { int t,n,i,j,x; scanf("%d",&t); for(x=0;x<t;x++) { int f=0; scanf("%d",&n); int a[16][16]; 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(a[i][j]!=0) { f=1; break; } } } if(f==1) printf("NO\n"); if(f==0) printf("YES\n"); } return 0; }
5.总结
PTA中出现段错误的原因:
(1)scanf里地址列表忘记&(说明,如果使用%s,字符数组名前面不用&)
(2)数组开的太小,太大可能也不行
(3)访问数组元素的时候,下标越界了 -
pta 7-1 判断上三角矩阵 (15 分)
2021-03-17 18:20:187-1 判断上三角矩阵 (15 分) 上三角矩阵指主对角线以下的元素都为0的矩阵;主对角线为从矩阵的左上角至右下角的连线。 本题要求编写程序,判断一个给定的方阵是否上三角矩阵。 输入格式: 输入第一行给出一个正整数T... -
pta判断上三角矩阵
2022-05-19 18:29:56本题要求编写程序,判断一个给定的方阵是否上三角矩阵。 输入格式: 输入第一行给出一个正整数T,为待测矩阵的个数。接下来给出T个矩阵的信息:每个矩阵信息的第一行给出一个不超过10的正整数n。随后n行,每行给出n... -
Python编程PTA题解——判断上三角矩阵
2020-03-21 14:44:37本题要求编写程序,判断一个给定的方阵是否上三角矩阵。 Input:输入第一行给出一个正整数T,为待测矩阵的个数。接下来给出T个矩阵的信息:每个矩阵信息的第一行给出一个不超过10的正整数n。随后n行,每行给出n个... -
【PTA题目】7-4 判断上三角矩阵 (15 分)
2021-11-04 16:16:49本题要求编写程序,判断一个给定的方阵是否上三角矩阵。 输入格式: 输入第一行给出一个正整数T,为待测矩阵的个数。接下来给出T个矩阵的信息:每个矩阵信息的第一行给出一个不超过10的正整数n。随后n行,每行给出... -
PTA习题7-3 判断上三角矩阵 (15分)
2020-04-09 15:28:15本题要求编写程序,判断一个给定的方阵是否上三角矩阵。 输入格式: 输入第一行给出一个正整数T,为待测矩阵的个数。接下来给出T个矩阵的信息:每个矩阵信息的第一行给出一个不超过10的正整数n。随后n行,每行给出n... -
PTA:判断上三角矩阵
2022-04-01 15:57:31本题要求编写程序,判断一个给定的方阵是否上三角矩阵。 输入格式: 输入第一行给出一个正整数T,为待测矩阵的个数。接下来给出T个矩阵的信息:每个矩阵信息的第一行给出一个不超过10的正整数n。随后n行,每行给出... -
【PTA】【C语言】【Python】判断上三角矩阵
2022-01-18 20:46:56本题要求编写程序,判断一个给定的方阵是否上三角矩阵。 输入格式: 输入第一行给出一个正整数T,为待测矩阵的个数。接下来给出T个矩阵的信息:每个矩阵信息的第一行给出一个不超过10的正整数n。随后n行,每行给出... -
python 判断三角矩阵 pta
2022-03-14 20:16:22判断三角矩阵 -
PTA|《C语言程序设计(第3版)》习题7-3 判断上三角矩阵 (15分)
2020-02-08 19:20:22本题要求编写程序,判断一个给定的方阵是否上三角矩阵。 输入格式: 输入第一行给出一个正整数T,为待测矩阵的个数。接下来给出T个矩阵的信息:每个矩阵信息的第一行给出一个不超过10的正整数n。随后n行,每行给出n... -
【PTA-python】第4章-21 判断上三角矩阵
2021-04-19 21:33:29第4章-21 判断上三角矩阵分析题目解法 分析 首先归结出判断上三角的函数的条件,定义为一个函数。这里注意,列表作为参数的定义方法:def shangsanjiao(m,lst=[]) for循环,实现按照输入要求的矩阵个数 题目 上... -
PTA 判断上三角矩阵 (15分)
2020-08-12 21:44:23本题要求编写程序,判断一个给定的方阵是否上三角矩阵。 输入格式: 输入第一行给出一个正整数T,为待测矩阵的个数。接下来给出T个矩阵的信息:每个矩阵信息的第一行给出一个不超过10的正整数n。随后n行,每行给出n... -
c 语言 上三角矩阵的判断
2020-03-11 21:00:45./***** 题目描述 编写程序,输入一个正整数n(1<=n<=10)和n阶方阵a中的元素,如果a是上三角...要求定义函数IsUpperTriMatrix()判断矩阵a是否是上三角矩阵,如果是返回1,否则返回0。函数原型如下: int IsU... -
[PTA]习题7-3 判断上三角矩阵
2021-05-03 15:32:44[PTA]习题7-3 判断上三角矩阵 上三角矩阵指主对角线以下的元素都为0的矩阵;主对角线为从矩阵的左上角至右下角的连线。 本题要求编写程序,判断一个给定的方阵是否上三角矩阵。 输入格式: 输入第一行给出一个正整数... -
标题PTA 7-14 判断上三角矩阵 (15分)
2020-04-15 21:30:38标题PTA 7-14 判断上三角矩阵 (15分) 上三角矩阵指主对角线以下的元素都为0的矩阵;主对角线为从矩阵的左上角至右下角的连线。 本题要求编写程序,判断一个给定的方阵是否上三角矩阵。 输入格式: 输入第一行给出一... -
第4章-21 判断上三角矩阵 (15分) PTA-python 题解 浙大版《Python 程序设计》题目集
2021-03-14 17:03:33判断上三角矩阵 上三角矩阵指主对角线以下的元素都为0的矩阵;主对角线为从矩阵的左上角至右下角的连线。 本题要求编写程序,判断一个给定的方阵是否上三角矩阵。 输入格式: 输入第一行给出一个正整数 TTT,为待测... -
浙江大学PTA题目 二维数组 7-4 判断上三角矩阵
2020-11-30 19:32:477-4 判断上三角矩阵 (15分) 上三角矩阵指主对角线以下的元素都为0的矩阵;主对角线为从矩阵的左上角至右下角的连线。 本题要求编写程序,判断一个给定的方阵是否上三角矩阵。 输入格式: 输入第一行给出一个正整数T... -
7-12 判断上三角矩阵 (10 分)
2021-03-29 19:24:357-12 判断上三角矩阵 (10 分) #include <cstdio> #include <iostream> #include <algorithm> #include <cmath> #include <cstring> using namespace std; typedef long long ll; ... -
浙大 | PTA 习题7-3 判断上三角矩阵 (15分)
2020-04-30 14:14:47本题要求编写程序,判断一个给定的方阵是否上三角矩阵。 输入格式: 输入第一行给出一个正整数T,为待测矩阵的个数。接下来给出T个矩阵的信息:每个矩阵信息的第一行给出一个不超过10的正整数n。随后n行,每行给出n... -
PTA判断上三角矩阵
2020-12-22 22:26:39标题PTA 7-14 判断上三角矩阵 (15分) #include <stdio.h> int main() { int i,j,n,fan[10][10],k,n,count=0; scanf("%d",&n); for(i=1;i<=n;i++) { scanf("%d",&a); { for(j=0;j<a;j++) { for... -
浙大PTA 第4章-21 判断上三角矩阵 (15 分)
2021-07-23 14:52:58本题要求编写程序,判断一个给定的方阵是否上三角矩阵。 输入格式: 输入第一行给出一个正整数T,为待测矩阵的个数。接下来给出T个矩阵的信息:每个矩阵信息的第一行给出一个不超过10的正整数n。随后n行,每行给出... -
判断上三角矩阵--C语言
2021-12-25 10:30:15C语言数组练习,判断上三角形矩阵,PTA练习题 -
实验7-2-5 判断上三角矩阵 (15 分)
2018-12-28 18:01:03实验7-2-5 判断上三角矩阵 (15 分) 注:此代码与网上其它代码最大区别是利用数组存储判断结果,在读入所有数据后再输出判断结果,而不是逐次输出。 示例: 上三角矩阵指主对角线以下的元素都为0的矩阵... -
7-5 判断三角矩阵 (30 分)(PTA Python版本)
2022-03-14 18:37:197-5 判断三角矩阵 (30 分)(PTA Python版本) -
PTA——7-3 判断上三角矩阵
2019-12-12 15:08:50本题要求编写程序,判断一个给定的方阵是否上三角矩阵。 输入格式: 输入第一行给出一个正整数T,为待测矩阵的个数。接下来给出T个矩阵的信息:每个矩阵信息的第一行给出一个不超过10的正整数n。随后n行,每行给出n... -
PTA 7-81(用指针) 判断上三角矩阵 (15 分)
2019-11-26 11:01:20本题要求编写程序,判断一个给定的方阵是否上三角矩阵。 输入格式: 输入第一行给出一个正整数T,为待测矩阵的个数。接下来给出T个矩阵的信息:每个矩阵信息的第一行给出一个不超过10的正整数n。随后n行,每行给出n...