第三周编程总结

判断上三角矩阵
一、实验代码

include<stdio.h>

int main()
{
int T;
scanf("%d ",&T);

int i,j,t,n;
int a[10][10],Tab[100];
for(t=1;t<=T;t++){
	n=1;				
	scanf("%d
",&Tab[t]);	
	for(i=0;i<Tab[t];i++){
		for(j=0;j<Tab[t];j++){
			scanf("%d",&a[i][j]);		
			if(i>j){					
				if(a[i][j]!=0) {
					n=0;
				}
			}
		}
	}
	if(n) printf("YES
");
	else printf("NO
");
}

return 0;

}
二、设计思路
第一步:定义矩阵数T,行标 i,列标 j,循环变量 t, n
第二步:定义整型二维数组a[10][10],一维数组tab[100]
第三步:for循环,循环T次
第四步:循环i,j,
第五步:if语句
第六步:判断结果,输出结果
三、本题调试过程碰到问题及解决方法
问题:n=1默认为矩阵上三角
解决方法:求助大佬,网上搜索。
四、流程图

五、运行结果截图

六、完成时间:四五个小时
体会:有点难,多学习,好好学习,天天向上。

给定一个整数数组(包含正负数),找到一个具有最大和的子数组,返回其最大的子数组的和。
例如:[1, -2, 3, 10, -4, 7, 2, -5]的最大子数组为[3, 10, -4, 7, 2]
一、实验代码

include<stdio.h>

include<stdlib.h>

int main()
{
FILE*fp;
int sum,p,q,i,j,n;
int a[n];

if((fp=fopen("C:\YJJ\YJJ.txt","w"))==NULL)
{
    printf("File open error!
");
    exit(0);
}

scanf("%d",&n);
fprintf(fp,"%d
",n);

for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
fprintf(fp,"%d,",a[i]);
}

p=a[0];               
for(i=0;i<n;i++)
{
    sum=0;
    for(j=i;j<n;j++)
	{
        q=a[j];
        sum+=a[j];
          if(q<sum)
	      {
           q=sum;
          }
    }
             if(p<q)
	         {
               p=q;
             }
}
fprintf(fp,"%d
",p); 

if(fclose(fp))
{
    printf("Can not close the file!
");
    exit(0); 
}

return 0;

}
二、设计思路
第一步:编译头文件,新的文件名
第二步:定义指针变量,整型变量,数组名
第三步:打开文件
第四步:for循环,读入和处理数据
第五步:a[0]赋值给p
第六步:求和
第七步:比较大小,赋值
第八步:输出结果
三、本题调试遇到问题和解决方法
问题:运行结果错误,显示输入错误
解决方法:文件名称和途径出现错误
四、流程图

五、运行结果截图

六、完成时间:三个半小时
体会:复杂,和同学一起讨论学习,借鉴大佬方法,好好学习,天天向上。
完成过程艰难,错误很多次,有点累。但会再接再厉。

原文地址:https://www.cnblogs.com/yuhaner/p/10524741.html