题目一:第三周pta作业总结
1.判断上三角
上三角矩阵指主对角线以下的元素都为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>
int main()
{
int T, Order;
int date[10][10];
scanf("%d", &T);
for (int i = 0, flag = 0; i < T; i++)
{
flag = 0;
scanf("%d", &Order);
for (int i = 0; i < Order; i++)
for (int j = 0; j < Order; j++)
scanf("%d", &date[i][j]);
for (int i = 1; i < Order; i++)
{
for (int j = 0; j < i; j++)
{
if (date[i][j] == 0)
flag = 0;
else
{
flag = 1;
break;
}
}
if(flag)
break;
}
if (flag) printf("NO\n");
else printf("YES\n");
}
return 0;
}
(上三角实在不会,仿照着助教的解析敲得代码,思路知道了一些)
2.编译结果

3.编译的思路


(不知道是文件出了问题还是电脑,不能完整导入图片,将就着用,见谅)
编译过程中遇到的问题
1.平常低级输入问题啊,符号错误等等
2.判顶上三角条件应该为不等于0,我之前用的时等于0
3.最后一个if判断语句位置错误,没放在第一个for循环后面
3.学习进度
怎么说呢,学了点指针,但还是一知半解,前面基础还在补,数组的简单题目也会做了,希望更好
(代码是参考的助教的,编译思路也是解析视频教的,愿老师谅解)
浙公网安备 33010602011771号