[Lenguaje C] Resumen del conocimiento de matrices (1)

1. Definición de matriz

Una matriz es una colección de datos ordenados del mismo tipo de datos. Los tipos de datos pueden ser tipo int, tipo char, tipo flotante, puntero, estructura, unión y otros tipos. Datos ordenados significa que cada dato de la matriz tiene un subíndice correspondiente, que comienza en 0 y aumenta secuencialmente. Una matriz con un subíndice es una matriz unidimensional, una matriz con dos subíndices es una matriz bidimensional y una matriz con múltiples subíndices es una matriz multidimensional.

2. Matriz unidimensional

Escriba el nombre nombre de la matriz [expresión constante];
como por ejemplo: int a[6];
6 significa que hay 6 elementos, que es la longitud de la matriz

  • El rango de valores del subíndice es [0, longitud de la matriz-1]. Tenga en cuenta que el subíndice no puede cruzar el límite.

  • En términos generales, las expresiones constantes pueden ser constantes enteras o constantes simbólicas y no pueden contener variables.

    错误: int i=10;			正确:#define M 15
    	  int a[i];			      int a[M];//符号常量
    
  • Los elementos de la matriz se pueden asignar y hacer referencia a ellos.

  • inicialización:

    类型名 数组名[数组长度]={初值表};
    int [5]={1,2,3,4,5};
    int [5]={1,2,3};//只对数组前三个元素赋初值 其他两个都为零
    int []={1,2,3,4};//系统会认为只有4个元素
    

3. Matriz bidimensional

Nombre del tipo nombre de la matriz [expresión constante 1] [expresión constante 2] La
expresión constante 1 representa la longitud de la primera dimensión de la matriz (número de filas). La
expresión constante 2 representa la longitud de la primera dimensión de la matriz (número de columnas). ).
Por ejemplo: int a [3][4];
representa tres filas y cuatro columnas, un total de 12 elementos

  • inicialización

    类型名 数组名[行数][列数]={初值表};
    int a[3][4]={
         
         {1,2,3,4},{5,6,7,8},{9,10,11,12}};
    int a[3][4]={
         
         {3},{2},{5}};//只对每一行第一列赋初值
    
  • Al definir una matriz, se puede omitir el número de filas, pero no se puede omitir el número de columnas. Los siguientes son equivalentes

    int a[2][3]={3,5,7,9,11,13};
    int a[ ][3]={3,5,7,9,11,13};
    int a[ ][3]={
         
         {3,5,7},{9,11,13}};
    

4. Matriz de caracteres

Las matrices de caracteres también se dividen en matrices unidimensionales y matrices bidimensionales.

1. Matriz de caracteres unidimensional

nombre de matriz de caracteres [expresión constante],
como por ejemplo: char str[5];

  • inicialización
char 数组名[常量表达式]={初值表};
char str[6]={'C','h','i','n','a','\0'};
  • Si el número de valores iniciales en la tabla de valores iniciales es menor que la longitud de la matriz de caracteres, los elementos adicionales son "\0" y el valor inicial es 0. Porque el carácter "\0" representa el número entero 0, que es el carácter con código ASCII 0. Pero "\0" no es el carácter '0' y el valor del código ASCII del carácter '0' es 48.

  • Cuando la matriz de caracteres es una cadena continua, la longitud de la matriz debe ser el número de elementos de la matriz + 1, porque se debe agregar "\0"

    char str[6]={'C','h','i','n','a','\0'};
    	 等价于char str[6]={"China"};
    

2. Matriz de caracteres bidimensionales

nombre de matriz de caracteres [expresión constante 1] [expresión constante 2],
como por ejemplo: char str[5][10];

  • inicialización

    char book[4][10]={"hello","the","world","mengyuan"};
    

Supongo que te gusta

Origin blog.csdn.net/m0_74102736/article/details/130184131
Recomendado
Clasificación