数组作业

Posted cenyan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数组作业相关的知识,希望对你有一定的参考价值。

题目一:信管17数组—— 7-2求最大值及其下标

1.pta提交列表:

2.设计思路:本题是输入一串数依次比较大小,找出最大值及其下标。用数组比较。

流程图如下:

3.代码截图:

4.调试问题:

在提交列表里面出现了四次编译错误,因为粗心一直没有把for语句括号里面的双引号去掉,所以没有调试正确。

题目二:7-4查找整数

1.提交列表:

2.设计思路:顾名思义是在一串数里面寻找与输入值相同的数,找到及输出它的位置,否则输出没有找到。用数组定义一串数,逐个寻找相不相同。

流程图如下:

3.代码截图:

4.调试问题:

     

在提交三次的情况下,第一次使用的是函数封装的情况,在Dev上面运行是零错误,或许是Dev又发疯误导我,再看了一遍程序发现编写的程序过于复杂,所以改了一

下不使用函数形式来写。在后一个程序提交过程中还是存在部分错误,仔细调试一下是输入x的值从始至终只有一个,不需要在for语句后面才输入,所以调试改正之后

才答案正确。

题目三:7-6冒泡法排序:

1.提交列表:

2.设计思路:本题是比较典型的冒泡法排序,将输入的一串数依次比较,如果后面的数大于前面的数,则交换位置,中间用一个中间值t进行交换,最后输出按从小到大的顺序排列,用函数的方法进行编程会显得代码比较好看。

流程图如下:

3.代码截图:

4.调试问题:

这道题出现了编译错误,答案错误,部分错误的问题,其中编译错误是经常出现的错误,没有在输入a[i]没有用&符号,至于答案错误和编译错误始终没有找出来,只是pta给出的分数和提示都是部分错误,试过调试子主函数都没有正确。

四.同学代码结对互评:

我的代码:

李桢同学的代码:

我觉得我们代码最大的差异在于我的代码是采用了flag语句,李桢代码用函数封装,采用了两次数组形式,进行一一对比,看上去简单明了。

我的代码也还是集中于最原始的方法。编程总归要求精炼,所以会继续加油。

五.本周pta排名:

六.学习总结:

学会了什么?本章学会了用数组的形式解决多个数及字符串的处理,并且用函数的形式对数组进行传值。

                   学会了冒泡排序和选择法排序,两个值之间的交换数值。

                    取伪随机数:调用stdlib.h、time.h、string.h。

                                         a[i]=(rand()%100)取一到一百的伪随机数

                   用数组定义二维数组。

                   进制之间的转换:比如十六进制转换为十进制数:

                                              number=number*16+head[i]-\'0\';

                                              number=number*16+head[i]-\'A\'+10;

                                              number=number*16+head[i]-\'a\'+10;

                    输入一字符串的情况,要用‘\\0’作为结束符。

不会什么?

在pta中出现的例题中,“出生年”“点赞”“找鞍点”“说反话”等不会。

 

以上是关于数组作业的主要内容,如果未能解决你的问题,请参考以下文章

第8次作业-数组排序(插入排序)

作业2

第七次作业-输出数组中最大值

3.20作业解答

作业2

课堂作业--最大子数组的和