数组

数组

一、PTA实验作业

题目17-2

  1.    本题PTA提交列表。

 

   2.设计思路:本题要求一个数组中的最大值及下标。先假设最大值是第一个数,再对数组中的数进行遍历,比如第二个数大于第一个数时,第二个数就替换第一个数成为最大值,再去与第三个数比较,依次类推,循环结束后便可以得到最大值及它的下标。

 

   3.       代码截图。

 

 

 

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

 

 

这题答案未能完全正确是因为在if判断条件那里出了错,条件是a[i]>a[0],这样令之后更大的数只能与a[0]比较,无法与已知最大值比较,导致出错。解决方法就是改变判断条件为a[i]>a[max]。

 

题目27-6

1.本题PTA提交列表。

 

 

2.设计思路:本题要求输出进行k次的冒泡排序后的数组,所以要先设置一个循环k次的循环条件。再对数组进行排序。从第一个数开始,与下一个数进行比较,如果前一个数比下一个数大,则交换,否则不交换。依此循环k次,然后输出排序后的数组。

 

 

3.代码截图。

 

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

 

 

 

错误原因是因为多了一个循环嵌套,i没有用于循环的其他地方,所以只能控制循环次数,而应该控制次数的是for(t=0;t<k;t++)语句,所以导致错误。解决方法是删除此条语句。

题目37-10

  1.       本题PTA提交列表。

 

   2.       设计思路:首先将除最后一列和最后一行的数进行遍历,如果不是在副对角线上的数,就相加,是,则减去。最后得到的数便是题目要求的和。

 

   3.       代码截图。

 

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

 

 

本题出错的原因是没有正确判断当元素在副对角线上的时候,代表行列的变量i,j的数学关系,导致出错。

二、同学互评。

1.互评同学名字:朱佳楠。

2. ①我的代码(7-10

 

 

②同学代码(7-10

 

 

3.代码异同。

我的代码和朱佳楠同学的代码并无多大差异,主要差异就是她用了三个条件来找出题目要求的数,最后相加,而我是将一部分数加起来,减去多余的数。相比之下,我更喜欢我的代码,虽然朱佳楠同学能熟练运用continue,但是我的方法更为简单,代码主要部分也更为简短。

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

 

 

四、本周学习总结。

1.你学会了什么?

①我学会了用数组储存数字和字符串。

②输入输出字符串可以用%s,也可以用gets和puts。用%s存储字符串时,如果输入空格,系统直接认为字符串结束。而gets则会收入整个字符串知道换行。%c是逐个输出字母。

③学会用strlen(计算字符串的长度), strcat(连接两个字符串), strcmp(比较字符串的长度),strcpy(将一个字符串粘贴到另一个)处理字符串。

④使用二维数组解决矩阵相关的问题。

⑤使用选择排序法和冒泡排序法为数组中的数按一定顺序排列。

2.本周的内容,你还不会什么?

①对于字符串的运用,如删除,插入等不能熟练运用。我会通过练习和分析去理解它们。

PTA:7-7,7-8,7-9,7-16,7-19,7-20,7-25,7-28,7-29,7-30

posted on 2017-12-30 14:50  蓝天云窗  阅读(171)  评论(0编辑  收藏  举报

导航