Recorrer Array

Iniciado por cobolitros, 7 Julio 2011, 15:50 PM

0 Miembros y 1 Visitante están viendo este tema.

cobolitros

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:



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:



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

Valkyr

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]?

leogtz

Cita de: Valkyr en  7 Julio 2011, 20:44 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?
Código (perl) [Seleccionar]

(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}

http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com