title: Storing data in an array
body: <p>I am having a problem when storing data in a structure, what happens is that when I save a name, all the names are set to the last.</p>
  
  <p>I have a whole day trying to find the error.</p>
  
  <p>Here the code.</p>
  
  <pre><code>#include &lt;stdio.h&gt;
  
  typedef struct {
      int id;
      char *nombre;
      int saldo;
  } CLIENTES;
  
  CLIENTES Cliente[5];
  int n_client = 0;
  void RegistrarCliente (char *nom, int saldo);
  void Listar ();
  int n_client;
  
  void main (void)
  {
      for (int i = 0; i &lt; 5; i++) {
          char nombre[30];
          scanf ("%s", &amp;nombre);
          RegistrarCliente (nombre, 250);
      }
      Listar ();
  }
  
  void RegistrarCliente (char *nom, int saldo)
  {
      Cliente[n_client].id = n_client;
      Cliente[n_client].nombre = nom;
      Cliente[n_client].saldo = saldo;
      printf ("Cliente: %s registrado con una deuda de %d\n",
              Cliente[n_client].nombre, Cliente[n_client].saldo);
      n_client++;
  }
  
  void Listar ()
  {
      printf ("%-10s%-13s%-10s\n", "ID", "NOMBRE", "SALDO");
      for (int i = 0; i &lt; n_client; i++) {
          printf ("%-10d%-13s%-10d\n", Cliente[i].id, Cliente[i].nombre,
                  Cliente[i].saldo);
  
      }
  }
  </code></pre>
  
  <p><strong>Input/output</strong></p>
  
  <pre><code>Jhosh
      Cliente: Jhosh registrado con una deuda de 250
      Leo
      Cliente: Leo registrado con una deuda de 250
      Jhonny
      Cliente: Jhonny registrado con una deuda de 250
      Stweart
      Cliente: Stweart registrado con una deuda de 250
      Carlos
      Cliente: Carlos registrado con una deuda de 250
      ID        NOMBRE       SALDO
      0         Carlos       250
      1         Carlos       250
      2         Carlos       250
      3         Carlos       250
      4         Carlos       250
  </code></pre>