Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Industrial programming >> Linguagem C

Matrizes C

Matrizes C


Neste tutorial, você aprenderá a trabalhar com arrays. Você aprenderá a declarar, inicializar e acessar elementos de um array com a ajuda de exemplos.

Um array é uma variável que pode armazenar vários valores. Por exemplo, se você deseja armazenar 100 inteiros, pode criar um array para eles.

int data[100]; 

Como declarar um array?

dataType arrayName[arraySize];

Por exemplo,
float mark[5];

Aqui, declaramos um array, mark , do tipo ponto flutuante. E seu tamanho é 5. Ou seja, pode conter 5 valores de ponto flutuante.

É importante observar que o tamanho e o tipo de uma matriz não podem ser alterados depois de declarados.

Acessar elementos da matriz


Você pode acessar elementos de uma matriz por índices.

Suponha que você tenha declarado um array mark como acima. O primeiro elemento é mark[0] , o segundo elemento é mark[1] e assim por diante.

Algumas palestras :

  • Matrizes têm 0 como o primeiro índice, não 1. Neste exemplo, mark[0] é o primeiro elemento.
  • Se o tamanho de um array for n , para acessar o último elemento, o n-1 índice é usado. Neste exemplo, marca[4]
  • Suponha que o endereço inicial de mark[0] é 2120d . Em seguida, o endereço do mark[1] será 2124d . Da mesma forma, o endereço de mark[2] será 2128d e assim por diante.
    Isso ocorre porque o tamanho de um float é de 4 bytes.

Como inicializar um array?


É possível inicializar um array durante a declaração. Por exemplo,
int mark[5] = {19, 10, 8, 17, 9};

Você também pode inicializar uma matriz como esta.
int mark[] = {19, 10, 8, 17, 9};

Aqui, não especificamos o tamanho. No entanto, o compilador sabe que seu tamanho é 5, pois estamos inicializando-o com 5 elementos.

Aqui,
mark[0] is equal to 19
mark[1] is equal to 10
mark[2] is equal to 8
mark[3] is equal to 17
mark[4] is equal to 9

Alterar valor dos elementos da matriz

int mark[5] = {19, 10, 8, 17, 9}

// make the value of the third element to -1
mark[2] = -1;

// make the value of the fifth element to 0
mark[4] = 0;

Elementos da matriz de entrada e saída


Veja como você pode receber a entrada do usuário e armazená-la em um elemento de matriz.
// take input and store it in the 3rd element
​scanf("%d", &mark[2]);

// take input and store it in the ith element
scanf("%d", &mark[i-1]);

Veja como você pode imprimir um elemento individual de uma matriz.
// print the first element of the array
printf("%d", mark[0]);

// print the third element of the array
printf("%d", mark[2]);

// print ith element of the array
printf("%d", mark[i-1]);

Exemplo 1:entrada/saída de matriz

// Program to take 5 values from the user and store them in an array
// Print the elements stored in the array
#include <stdio.h>

int main() {
  int values[5];

  printf("Enter 5 integers: ");

  // taking input and storing it in an array
  for(int i = 0; i < 5; ++i) {
     scanf("%d", &values[i]);
  }

  printf("Displaying integers: ");

  // printing elements of an array
  for(int i = 0; i < 5; ++i) {
     printf("%d\n", values[i]);
  }
  return 0;
}



Saída
Enter 5 integers: 1
-3
34
0
3
Displaying integers: 1
-3
34
0
3

Aqui, usamos um for loop para pegar 5 entradas do usuário e armazená-las em um array. Em seguida, usando outro for loop, esses elementos são exibidos na tela.

Exemplo 2:calcular a média

// Program to find the average of n numbers using arrays

#include <stdio.h>
int main()
{
     int marks[10], i, n, sum = 0, average;

     printf("Enter number of elements: ");
     scanf("%d", &n);

     for(i=0; i<n; ++i)
     {
          printf("Enter number%d: ",i+1);
          scanf("%d", &marks[i]);
          
          // adding integers entered by the user to the sum variable
          sum += marks[i];
     }

     average = sum/n;
     printf("Average = %d", average);

     return 0;
}

Saída
Enter n: 5
Enter number1: 45
Enter number2: 35
Enter number3: 38
Enter number4: 31
Enter number5: 49
Average = 39

Aqui, calculamos a média de n números inseridos pelo usuário.

Acessar elementos fora de seu limite!


Suponha que você declarou um array de 10 elementos. Digamos,
int testArray[10];

Você pode acessar os elementos do array em testArray[0] para testArray[9] .

Agora, digamos que você tente acessar testArray[12] . O elemento não está disponível. Isso pode causar saída inesperada (comportamento indefinido). Às vezes você pode receber um erro e outras vezes seu programa pode ser executado corretamente.

Portanto, você nunca deve acessar elementos de uma matriz fora de seu limite.

Matrizes multidimensionais


Neste tutorial, você aprendeu sobre matrizes. Esses arrays são chamados de arrays unidimensionais.

No próximo tutorial, você aprenderá sobre arrays multidimensionais (array de um array).

Linguagem C

  1. Matrizes C#
  2. Matriz irregular em C#
  3. Passando array para uma função na programação C++
  4. Passar arrays para uma função em C
  5. Relação entre arrays e ponteiros
  6. Copiar Matrizes Java
  7. Matrizes em C++ | Declare | Inicializar | Ponteiro para exemplos de matriz
  8. Alocação dinâmica de matrizes em C++ com exemplo
  9. Tutorial Java Arrays:Declare, Crie, Inicialize [Exemplo]
  10. MATLAB - Matrizes