Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: cobolitros en 7 Julio 2011, 15:50 pm



Título: Recorrer Array
Publicado por: cobolitros en 7 Julio 2011, 15:50 pm
Hola, soy nuevo en c y quisiera hacer un recorrido de un array y que parte del array no asigne a otro array y la otra parte la asigne a un tercer array

ejemplo:

Código:

char valores[100] = {"carlos, 235, 856"}
                              {"carlos2, 253, 965"}

//dejarlos asi.

char nombres[10] = {"carlos"}
                              {"carlos2"}
int codigos[20][20] = {235} {856}
                               {253} {965}


actualmente tengo lo siguiente:

Código:

do
    {
        c = fgets(palabra, 100, fp1);   /* Obtiene una linea del archivo */
        if (c != NULL)
        // obtengo {"carlos, 235, 856"}
        for (a=0;a<=strlen(palabra);a++)
        {
          if (palabra[a]==';')
          {
             printf("%c", palabra[a]);
             moneda[a] = palabra[a];         
          }
          else
          {
                 
                 
          }
          printf("%s", moneda);         
        }
    }
    while (c != NULL);


como puedo hacerlo

Gracias


Título: Re: Recorrer Array
Publicado por: Valkyr en 7 Julio 2011, 20:44 pm
Partiendo de lo que dices al principio, es decir, teniendo un array, recorrerlo e insertar esos elementos en otros dos arrays podrías hacer lo siguiente:

  • Recorres el array principal con un bucle for.
  • Para cada elemento del array compruebas si es un número con la función isDigit() de la librería cctype.h
  • Si es digito entonces lo insertas en el array de los digitos, si no lo metes en el de las cadenas.

esto podría ser una forma de hacerlo.

Por cierto, ¿para declarar un array de "cadenas" no sería char * valores[100]?


Título: Re: Recorrer Array
Publicado por: leogtz en 7 Julio 2011, 21:08 pm

Por cierto, ¿para declarar un array de "cadenas" no sería char * valores[100]?

Sí, está incorrecto el código que puso él.

¿Para qué usar un array de arrays de enteros?, ¿no podría solo ser un array?