数组修改

作者: RicherYY | 来源:发表于2018-05-01 19:07 被阅读0次

不可以直接从数组修改数据,因为数组的定义是一块连续的内存空间。
可以想象成大楼,突然要摘掉第六层是不可能的。
所以只能是后一个数覆盖前一个数。

删除的逻辑

12 34 23 67 9

1.查找要修改数字的下标
2.后面一个数字覆盖前面一个数字
3.整个数组的总长度- 1

比如删除23
覆盖完了之后的效果是这样的
12 34 67 9 9

1.查找要修改的数字下标
2.从下标开始后面一个元素覆盖前面的元素
3.数组的总长度 - 1

代码实例

int main()
{
    int count = 5;              //表示数组元素的个数
    int powers[] = {42322, 45771, 40907, 41234, 40767};
    int deletePowers;           //表示用户要删除的变量
    int deleteIndex = -1;            //表示用户要删除数据的下标
    int i;                      //循环变量
    printf("请输入要删除的数字;");
    scanf("%d",&deletePowers);
    for (i = 0; i < count; i++)
        {
            if (deletePowers == powers[i])
                {
                    //记录当前的下标
                    deleteIndex = i;
                    break;
                }
        }
    //根据判断是否找到执行后续操作
    if (-1 == deleteIndex)
        {
            printf("很遗憾没找到要删除的数据");
        }
    else
    {
        //从找到的数据下标开始,后一个数字覆盖前面一个数字
        for(i = deleteIndex; i < count - 1; i++)    // 后面一个数字赋值给前面一个数字,最后一个数字没有了所以要-1
            {
               powers[i] = powers[i+1];
            }
    }
    //*最后一定记得总长度-1*
    count--;

    printf("最后删除的数据是;\n");
    for(i = 0; i < count; i++)
        {
            printf("%d\t",powers[i]);
        }


    return 0;
}

相关文章

  • 数组打乱的代码片段

    打乱给定数组,返回新数组,不修改原数组

  • 数组修改

    不可以直接从数组修改数据,因为数组的定义是一块连续的内存空间。可以想象成大楼,突然要摘掉第六层是不可能的。所以只能...

  • Array数组

    Array遍历 Array数组删除 修改数组

  • splice()和slice()

    不同 splice()会修改数组slice()不会修改数组,返回一个新数组 用法 splice()可以添加/删除数...

  • 数组-修改原数组

    arr.indexOf( searchElement[, formindex=0] )var telephones...

  • [Swift]数组元素是class和struct时的引用测试

    结论写在最前面: 数组元素是struct时,复制数组后修改,以及修改指向数组元素的变量都不会影响到原来的数组;元素...

  • 关于vue中数组与对象更新检测的问题

    (1)数组更新检测 然而有些非变异数组方法不会修改原数组:filter、concat、slice这些操作并不会修改...

  • 三种一维树状数组

    单点修改+区间查询 最基本的树状数组 树状数组入门 模板(洛谷P3374 【模板】树状数组1) 区间修改+单点查询...

  • 八、数组(二)

    数组中新增元素 可以通过修改length长度以及索引号增加数组元素 通过修改length长度新增数组元素 可以通过...

  • C语言数组指针

    总:如果编写的函数需要修改数组,在声明数组形参的不使用const;如果编写的函数不用修改数组,那么在声明数组形参时...

网友评论

    本文标题:数组修改

    本文链接:https://www.haomeiwen.com/subject/zpbxrftx.html