zoukankan      html  css  js  c++  java
  • 数组的使用

    数组

    1. 为什么需要数组        为了解决大量同类型数据的存储和使用问题 ; 为了模拟现实世界

    2. 数组的分类

      一维数组

      怎样定义一维数组 为n个变量连续分配存储空间

      所有的变量数据类型必须相同

      所有变量所占的字节大小必须相等

      例子:int a[5]

      一维数组名不代表数组中所有的元素

      一维数组名代表数组第一个元素的地址

      有关一维数组的操作:

      初始化

      完全初始化 int a[5] = {1,2,3,4,5};

      不完全初始化 int a[5] = {1,2,3}; 未被初始化的元素自动为0

      不初始化 int a[5] ;所有元素是垃圾值

      清零int a[5] = {0};

      错误写法

      int a[5];

      a[5] = {1,2,3,4,5}; // 错误写法

      只有在定义数组的同时才可以整体赋值,其他情况下整体赋值都是错误的。

      int a[5] = {1,2,3,4,5};

      a[5] = 100; // error 因为没有a[5]这个元素,最大到a[4]

      int a[5] = {1,2,3,4,5};

      int b[5];

      如果要把a数组中的值全部赋值给b数组

      错误写法:

      b = a;

      正确写法:

      for(i=0; i<5; ++i)

      b[i] = a[i];

      赋值

      二维数组

                     int a[3][4];
                    总共是12个元素,可以当作三行四列来看待,这12个元素的名字依次是a[0][0] a[0][1] a[0][2] a[0][3]
                    a[i][j]表示第i+1行,j+1列的元素

      初始化

      int a[3][4] = {1,2,3,4,5,6,7,8,9,10,11,12};
      int a[3][4] = {
          {1, 2, 3, 4},
          {5, 6, 7, 8},
          {9, 10, 11, 12}
         
      }

      输出二维数组内容

    /*
     输出数组的内容
    */

    # include <stdio.h>

    int main(void)
    {
    int a[3][4] = {
    {1, 2, 3, 4},
    {5, 6, 7, 8},
    {9, 10, 11, 12}
    };
    int i, j; // 输出数组的内容

    for(i=0; i<3; ++i)
    {
    for(j=0; j<4;++j)
    printf("%-5d", a[i][j]); // "-"号表示左对齐,5表示占五个位置
    printf(" ");
    }

    return 0;

    }

    多维数组

    是否 存在多维数组 不存在 因为内存是线性一维的 n维数组可以当做每个元素是n- 1维数组的数组

    比如: int a[3][4 】 该数组是含有三个元素的一维数组 只不过每个元素都可以再分成4个小元素

    int a【3】【4】【5】 该数组是含有3个元素的一维数组 只不过每个元素都是4行5列的二维数组



  • 相关阅读:
    条形码识别
    使用边缘检测,将图像旋转到水平位置
    pyzbar 安装
    关于跑别人代码中遇到的问题
    %matplotlib inline
    git 相关流程和报错解决
    原码、反码和补码
    opencv 图像resize
    前端跨域解决方案汇总
    vuecli3 引入构建版本的2种方式
  • 原文地址:https://www.cnblogs.com/icoding233/p/13174052.html
Copyright © 2011-2022 走看看