首页 > C语言博客作业04--数组

C语言博客作业04--数组

1.本章学习总结

1.1 思维导图

1480367-20181216145213981-1167060016.png

1.2 本章学习体会及代码量学习体会

1.2.1 学习体会

关于数组,数组是最基本的构造类型,它是一组相同类型数据的有序组合。数组中的元素在内存中连续存放,每个元素都属于相同的数据类型,用数组名和下表可以唯一地确定数组元素。数组的学习,难度比前面内容大,做pta的时候,出现了运行超时的问题,一维数组掌握还行,但二维和字符数组就有点不牢固,对用数组解决的思维仍不够成熟,需要加强。

1.2.2 代码累计

1480367-20181216150144854-238898981.png

2.PTA总分

2.1截图PTA三次题目集:一维数组、二维数组和字符数组共3次题目集的排名得分

1480367-20181216150305487-1644698000.png

1480367-20181216150326780-783204582.png

2.2 我的总分:176

3.PTA实验作业

3.1 PTA题目1:数组循环左移

3.1.1 算法分析

1480367-20181216151828746-161208550.png

3.1.2 代码截图

1480367-20181216151900149-1986849717.png

3.1.3 PTA提交列表及说明

1480367-20181216152002119-426029392.png

1480367-20181216152016433-370201170.png

  • Q1:一开始使用双数组,但是使用错误,复杂化,不知道如何处理
  • A1:后来改用一个数组,通过直接输出转移后的数组数字,避免复杂化。
  • Q2:使用一个数组,却出现了部分错误的情况,百思不得其解
  • A2:后来发现当输入的转移数字比数组下标大的时候,没有考虑到转移了多个循环,通过取余转移数字与数组长度,得到实际的转移长度。

3.2 PTA题目2:找出不是两个数组共有的元素

3.2.1 算法分析

1480367-20181216154317675-1658416150.png

3.2.2 代码

1480367-20181216154351784-255503493.png

1480367-20181216154409040-754528517.png

3.2.3 PTA提交列表及说明

1480367-20181216154448063-1859724817.png

  • Q1:做法简单,一做就错
  • A1:没有考虑好数组a中有数组b没有的值,数组b有数组a中没有的值
  • Q2:考虑好,仍然答案错误
  • A2:没有考虑构造好的新数组c中数组存在重复

3.3 PTA题目3:打印n行杨辉三角,n<10

3.3.1 算法分析

1480367-20181216161616149-1856116252.png

3.3.2 代码

1480367-20181216161754706-1470275817.png

3.3.3 PTA提交列表及说明

1480367-20181216161916011-1685367493.png

注:问题具体出现在编译器上,而不是在pta提交列表内

  • Q1:出现不是规则的图形 并且还带有错乱数字
  • A1:没有在准确的位置输入换行符
  • Q2:图形规范 但示例中最后一行的数字,仍然有差错
  • A2:输入的二维数组范围比所需的小,数组越界

    4.代码互评

    4.1 代码截图

  • 同学代码截图

1480367-20181216165113477-22437891.png

1480367-20181216165146634-1702647279.png

1480367-20181216165207433-1619842753.png

  • 我的截图

1480367-20181216165326113-582860887.png

1480367-20181216165349310-1017560540.png

4.2 二者的不同

  • 找出不同数字的方式不同,我的会更简短一点,但是不同的方法,同学用了flag判断。

转载于:https://www.cnblogs.com/wxj991220/p/10089610.html

更多相关:

  • 学习目标:了解什么是数组;数组如何访问内存地址(一维,二维);什么是数组是由相同类型的元素的集合所组成的数据结构,分配一块连续的内存来存储。利用元素的索引可以计算出该元素对应的存储地址。 最简单的数据结构类型是一维数组。数组如何实现随机访问?数组是一种线性表数据结构,用一直连续的内存空间来储存一组具有相同类型的数据。根据数组的特性(连...

  • 一、静态数据及动态数组的创建     静态数据:               int a[10];             int a[]={1,2,3};             数组的长度必须为常量。     动态数组:             int len;             int *a=new int...

  • 给定一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。 元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。 示例 1: 给定 nums = [3,2,2,3], val...

  • 给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。 示例 1: 给定数组 nums = [1,1,2],  函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2...

  • 文章目录1. 数组的声明2. 数组元素的遍历3. 数组的截取4. Go 语言的切片5. 数组 和 切片的共同点...

  • THE START更新堪称轻量级MATLAB的一款软件最新版-Maplesoft Maple 2019.2 中文版。Maple是符号和数字计算环境,也是一种多范式编程语言,由Maplesoft开发,还涵盖了技术计算的其他方面,包括可视化,数据分析,矩阵计算和MATLAB连接。MapleSim工具箱添加了用于多域物理建模和代码生成的...

  • 同学们,你们在学习他人的代码,是否见过这样的代码 def main(): def user_info(gender): 当你还是个小萌新时,你一定会认为这是个很牛逼的语法。 当你有了一点基础时,你一定会想要了解这个语法,并且尝试去使用它。 那么今天,我们便来了解这个牛语法。 有了一点点的python基础,我们来看这段代...

  •     自从用了这些快捷键,鼓励师也不需要了,代码开发效率蹭蹭提升!!! ctrl+shift+[折叠代码 (这个比ctrl+k ctrl+l、ctrl+k ctr+j不知道好用多少倍!) ctrl+shift+]展开代码 ctrl+shift+T打开手贱不小心关掉的窗口 【推荐】ctrl+shift+O打开当前文件...

  • 在提交代码之前,建议最好先Fetch代码下来(如果有冲突,系统会提示),然后再操作Merge到本地分支,这样做是为了避免有其他人同时修改了当前分支,如果直接用Ctrl+T(pull代码)极有可能覆盖本地分支最新代码,安全起见先Fetch代码(Ctrl+Alt+Shift+1)——所谓:小心驶得万年船!...

  • 每次复制代码时,如果代码里有 // 这样的注释就容易让格式乱掉,通过下面的设置就可以避免这种情况。 粘贴代码时取消自动缩进 VIM在粘贴代码时会自动缩进,把代码搞得一团糟糕,甚至可能因为某行的一个注释造成后面的代码全部被注释掉,我知道有同学这个时候会用vi去打开文件再粘贴上去(鄙人以前就是这样),其实需要先设置一下 s...