Programa para copiar array em C

Este programa deve ajudá-lo a aprender um dos fundamentos dos arrays. Copiar uma matriz envolve a cópia índice a índice. Para que isso funcione, devemos saber antecipadamente o comprimento da matriz, que usaremos na iteração. Outra matriz de mesmo comprimento será necessária, para a qual a matriz será copiada.

Algoritmo

Vamos primeiro ver qual deve ser o procedimento passo a passo deste programa -

START
   Step 1 → Take two arrays A, B
   Step 2 → Store values in A
   Step 3 → Loop for each value of A
   Step 4 → Copy each index value to B array at the same index location
STOP

Pseudo-código

Vamos agora ver o pseudocódigo deste algoritmo -

procedure copy_array(A, B)

   SET index to 1
   FOR EACH value in A DO
      B[index] = A[index]
      INCREMENT index
   END FOR
   
end procedure

Implementação

A implementação do pseudocódigo derivado acima é a seguinte -

#include <stdio.h>

int main() {
   int original[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 0};
   int copied[10];
   int loop;
   
   for(loop = 0; loop < 10; loop++) {
      copied[loop] = original[loop];
   }
   printf("original -> copied \n");
   
   for(loop = 0; loop < 10; loop++) {
      printf("   %2d        %2d\n", original[loop], copied[loop]);
   }

   return 0;
}

A saída deve ser semelhante a esta -

original -> copied
    1         1
    2         2
    3         3
    4         4
    5         5
    6         6
    7         7
    8         8
    9         9
    0         0