数组

一.PTA实验作业

7-3 将数组中的数逆序存放

 1.PTA提交列表:

 

 

2.设计思路:

定义i=0,n,temp,和数组a[10],将给定的n个整数存入数组a[ ]中,逆序存放,输入

要存放元素的个数,用for循环将逆序数交换排列成正序,(第一个和最后一个

交换,第二个和倒数第二个换…),最后再用for循环顺序输出数组中的元素,

并且用i<n-1作为if条件判断输出空格。

3.本题调试过程中碰到问题及PTA提交列表情况说明

 

 问题说明及修改

 

问题:没有注意到题目中行末不得有多余空格的要求,导致与题目输出格式不符,行

末多了一个空格,格式错误。

修改:在第二个for里添加一个if条件,通过判断是否i<n-1保证行末无多余空格输出,

即如果i<n-1,就到了最后一个数字就不用输出空格,否则输出空格。

 4.修改后的正确代码:

 

 

 

7-10 矩阵运算

1.PTA提交列表:

2.设计思路:

定义变量i=0,j=0,n,temp,sum=0,定义一个二维数组存放矩阵,将输入的数存入二维数组,

通过for循环,循环条件为i<n-1,j<n-1历遍矩阵除副对角线、最后一列和最后一行以外的

所有元素并求和,按矩阵形式输出二维数组,

 

 

3.本题调试过程中碰到问题及PTA提交列表情况说明

问题:sum没有初始为0,最后一行,最后一列的表示方法错了;

修改:sum初始为0,i表示行,j表示列,不计算最后一行和最后一列,即历遍数组除了

最后一行和最后一列,也即i<n-1,j<n-1,n表示为行数和列数。

4.修改后正确代码

 

 

 

7-2 求最大值及其下标

1.PTA提交列表:

2.设计思路:

先定义变量i,max=0,a[10],然后输入n,用循环输入数组元素,再用一个循环,

循环里面用if判断a[max]与a[i]大小,如果a[max]<a[i],就令max=i,最后输出。

 

 

3.本题调试过程碰到问题及PTA提交列表情况说明

 问题及修改:一开始在第一个for括号后面加了个分号,纠结了好久,分号表示该句结束,

因此不能执行读入数组元素的指令,导致答案错误。

4.修改后正确代码

 

 二、同学代码结对互评

1.互评同学

马晓萱

2.我的代码、互评同学代码截图

 

 

3.我和同学代码不同在哪里?有哪些各自优势?你更喜欢哪种代码风格?

如果同学代码有错的也请帮忙指出来哪里出问题。

1.在行末没有多余空格这一表示方式上,我用了一个if条件来判断是否到行末了,

若是到行末了则不需要输出空格,而她采用的是在for循环里直接到n-1行截止,

然后再输出最后一行的元素,直接避免行末出现空格。

2.我觉得这两种方法都各有优势,看个人理解选择。我觉得她写的代码适当

的空格让人看起来很清晰,很舒服。

3.之前没有想到这种方法,还是觉得自己的方法比较好理解。

三、截图本周题目集的PTA最后排名

 

四、本周学习总结

学会了什么?

1.学会了一维数组和二维数组的定义和引用,数组把相同类型的数据组成一起,

可以简单快捷的操作大量数据,避免处理大量数据方面的问题,更有效,简便

地解决问题。2.按矩阵形式输出数组时,外循环是针对行下标的,对其中每一行,

首先输出该行上的所有元素,内循环则是针对列下标。

3.学会了一些矩阵术语的表示

主对角线:  从矩阵的左上角至右下角的连线        i==j

上三角:      主对角线以上的部分                         i<=j

下三角:      主对角线以下的部分                     i>=j

副对角线: 从矩阵的右上角至左下角的连线   i+j==N-1

还不会什么?

不知道错哪里了,一直纠结不出来!

 

posted @ 2017-12-28 22:53  pumpkin15  阅读(224)  评论(0编辑  收藏  举报