• 11.数组的分类和定义


    1.数组的概念

    数组是若干个相同类型变量在内存中有序存储的集合。

    int a[10];//定义了一个整型的数组a,a是数组的名字,数组中有10个元素,每个元素的类型都是int类型,而且在内存中连续存储。
    这十个元素分别是a[0] , a[1] , … , a[9]
    a[0] ~ a[9] 在内存中连续的顺序存储

    2.数组的分类

    按元素的类型分类
    2.1 字符数组

    即若干个字符变量的集合,数组中的每个元素都是字符型的变量
    char s[10]; // s[0] , s[1] , … , s[9];

    2.2 短整型数组

    short int a[10];

    2.3 整型数组

    int a[10];

    2.4 长整型数组

    long int a[5];

    2.5 浮点型的数组(单,双)

    float a[6]; // a[4] = 3.14f;
    double a[8]; // a[7] = 3.1415926;

    2.6 指针数组

    char *a[10];
    int *a[10];

    2.7 结构体数组

    struct stu boy[10];

    按维数分类

    一维数组
    int a[30];

    二维数组
    int a[2][30];

    多维数组
    int a[4][2][10];
    三维数组是由多个相同的二维数组构成的

    3.数组的定义

    定义一个数组,在内存里分配空间

    3.1 一位数组的定义

    格式:

    数据类型 数组名 [数组元素个数];
    int a [10];
    char b [5]; // 定义了5个char类型变量的数组b

    数组定义的时候可以不给出数组元素的个数,根据初始化的个数来定数组的大小。

    #include
    int main()
    {
    	int a[5];
    	int b[] = { 1,6,9,3 };
    	printf("sizeof(a)=%d\n", sizeof(a));
    	printf("sizeof(b)=%d\n", sizeof(b));
    	return 0;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    在这里插入图片描述

    3.2 二维数组的定义

    格式:

    数据类型 数组名 [行的个数][列的个数];
    int a [4][5];
    定义了20个int类型的变量,分别是:
    a[0][0] , a[0][1] , a[0][2] , a[0][3] , a[0][4];
    a[1][0] , a[1][1] , a[1][2] , a[1][3] , a[1][4];
    a[2][0] , a[2][1] , a[2][2] , a[2][3] , a[2][4];
    a[3][0] , a[3][1] , a[3][2] , a[3][3] , a[3][4];

    二维数组在定义的时候,可以不给出行数,但必须给出列数,二维数组的大小根据初始化的行数来定。

    #include
    int main()
    {
    	int a[3][4];
    	int b[][3] = {
    		{1,2,3},
    		{4,5,6},
    		{7,8,9},
    		{10,11,12},
    		{13,14,15}
    	};
    	printf("sizeof(a)=%d\nsizeof(b)=%d\n", sizeof(a),sizeof(b));
    	return 0;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    在这里插入图片描述

  • 相关阅读:
    离线解锁 CodeCombat 全关卡教程 使用docker安装实现
    WebSocket
    【Spring】 Spring中的IoC(控制反转)
    块设备驱动实现--模拟一个块设备
    JavaScrip-T5(2022年11月21日移动2112班)
    Linux系统中常用的压缩与解压缩方法
    算法通过村第十一关-位运算|青铜笔记|初始位运算
    halcon 感兴趣区域
    第 28 篇 : SSH秘钥登录
    css3 table表格
  • 原文地址:https://blog.csdn.net/GUDGET/article/details/127959476