C语言数组的讲解

 2023-03-02 02:39:36  阅读 0

       在C语言中数组分为 一维数组和二维数组。它们的共同点是数组中的元素下标都必须从0开始。所以定义数组时长度若为n,则数组下标只能从0到n-1。

一维数组:

       一维数组用:“数组名[下标]”来定义。下标可以是整型常量也可以是整型表达式。一维数组的初始化可以有很多种,可以对数组元素全部赋初值,也可对数组部分元素赋初值,也可对数组元素全部赋初值时将数组定义为不确定长度的数组。代码展示如下:

    static int a[3]={7,8,9};//对数组元素全部赋初值执行后a[0]=7,a[1]=8,a[2]=9
    static int a[3]={7};//对数组部分元素赋初值执行后a[0]=7;a[1]=0,a[2]=0
    static int a[]={7,8,9};//对数组元素全部赋初值时定义不确定长度数组执行后a[0]=7,a[1]=8,a[2]=9

二维数组:

       二维数组用:“数组名[常量表达式1][常量表达式2]”来定义,其中常量表达式1指的是元素的行数,常量表达式2指的是元素的列数。所以常数表达式1和常数表达式2都必须是正整数。还需要注意的是二维数组的存放顺序是按行存放,先存放第一行的数据,再存放第二行的数据,以此类推。例如a[2][3]表示的是一个2行3列的数组,它的存放顺序是a[0][0],a[0][1],a[0][2],a[1][0],a[1][1],a[1][2]。二维数组赋初值的方法也有很多种,可以分行给二维数组赋初值,也可按数组在存储时的排列顺序赋初值,还可以允许省略第一长度来给二维数组赋初值(第二长度不可省)。代码展示如下:

    staitic int a[2][2]={{5,6},{7,8}};//分行赋初值执行后结果a[0][0]=5,a[0][1]=6,a[1][0]=7,a[1][1]=8
    staitic int a[2][2]={9,8,7,5};//按存储排列顺序赋初值执行后结果a[0][0]=5,a[0][1]=6,a[1][0]=7,a[1][1]=8
    staitic int a[][2]={9,8,7,5};//省略第一长度赋初始值执行后结果a[0][0]=5,a[0][1]=6,a[1][0]=7,a[1][1]=8

 

标签:

如本站内容信息有侵犯到您的权益请联系我们删除,谢谢!!


Copyright © 2020 All Rights Reserved 京ICP5741267-1号 统计代码