zoukankan      html  css  js  c++  java
  • C语言博客作业--数组

    展现PTA总分


    本章学习内容总结

    一维数组

    1.定义:一维数组的定义一般形式是:

    类型名指定数组中每个元素的类型

    数组名是数组变量的名称

    注:数组长度是一个常量

    数组名是一个地址常量,存放数组内存空间的首地址。

    2.引用

    定义数组后,就可以使用了。C语言规定,一次引用整个数组。数组元素的引用要指定下标,形式为:

    下标可以是数型表达式。它的合理取值范围是[0,数组长度-1]

    这些数在内存中按下标递增的顺序连续存储

    数组下标从0开始, 下标不能越界。

    数组元素的使用方法与同类型的变量完全相同。

    请读者注意区分数组的定义和数组元素的引用,两者都要用到“数组[整型表达式]”。定义数组时,方括号内是常量表达式,代表数组长度,它可以包号常量,但不能包含变量。也就是说,数组的长度在定义时必须指定,在程中是不能改变的。而引用数组元素时,方括号内是表达式,代表下标,是变量。

    一维数组的初始化

    一般形式:

    二维数组

    定义和引用

    1.定义

    二维数组的定义形式为:

    2.引用

    引用二维数组的元素要指定两个下标,即行下标和列下标,形式为:

    行下标的合理取值范围是[0,行长度-1],列下标的合理取值范围是[0, 列长度-1]。

    二维数组的元素在内存中按行/列方式存放,即先存放第0行的元素,再存放第1行的元素....其中每一行的元素再按照列的顺序存放

    (1)数组查找数据

    顺序查找法

    顺序查找也称为线形查找,属于无序查找算法。从数据结构线形表的一端开始,顺序扫描,依次将扫描到的结点关键字与给定值k相比较,若相等则表示查找成功;若扫描结束仍没有找到关键字等于k的结点,表示查找失败。

    (2)二分查找法:

    方法是不断的通过与中间数据比较,不断缩小范围,进而找到数据数据较多时,用此种方法效率减半,高效完成程序;但是算法复杂,只能用于有序排列

    通过不断与中间值得比较,最终可以高效的找到我们所需的值

    插入数据

    删除数组

    冒泡法排序

    将该位数用下一位的数来代替,然后接下来的数也依次往前移动一位,也可以重新定义一个数组,重新存放除要删除的数据之外的所有数据。

    PTA实验作业

    交换最大值和最小值

    1.没有正确判断最大值和最小值
    2.数组输入错误最后一个值应该是n-1
    3.进行交换时应该定义一个中间值来进行交换
    4.未考虑如果最大找到的下标刚好等于0,此时应该在进行一次交换

    数组循环左移

    1.在交换时未将第一个数组定义导致出错
    2.未将最后一个数组输出并且末尾无空格

    找鞍点

    代码阅读

    在进行问答题是调用不同的函数进行调用和判断,并可以分级调用,并在所有的程序的判断中使用不同的算法,与小学计算机又异曲同工之妙

  • 相关阅读:
    用Tinkercad学arduino之 LCD电压电流表
    用Tinkercad学arduino之 L293D电机驱动器驱动直流电机
    用Tinkercad学arduino之 74HC595 寄存器控制1位7段数码管
    用Tinkercad学arduino之 74HC595寄存器控制8个led跑马灯
    用Tinkercad学arduino之 红外遥控器
    用Tinkercad学arduino之 人体红外检测报警 LCD显示
    用Tinkercad学arduino之 人体红外检测报警 蜂鸣器+LED
    用Tinkercad学arduino之 电位器控制伺服电机转向
    用Tinkercad学arduino之 光线控制彩灯
    用Tinkercad学arduino之 温度LED报警
  • 原文地址:https://www.cnblogs.com/lowena/p/11878577.html
Copyright © 2011-2022 走看看