elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  (Consulta) Ejercicio de Listas en C - Error de Ejecucion
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: (Consulta) Ejercicio de Listas en C - Error de Ejecucion  (Leído 1,597 veces)
palacio29

Desconectado Desconectado

Mensajes: 103


Ver Perfil
(Consulta) Ejercicio de Listas en C - Error de Ejecucion
« en: 15 Octubre 2016, 18:12 pm »

Hola

Tengo un ejercicio en el cual tengo que almacenar palabras en una lista y luego recibir un valor entero. Si la palabra de la lista es mayor o igual que la longitud que ingrese anteriormente, esa palabra va a ser guardada en una nueva lista.
Estoy intentadolo hacer pero al momento de ejecutar el programa, me da un error de ejecucion en la carga y no le encuentro la falla.
Creo que es un error de carga.

Adjunto el codigo haber si me pueden dar una mano

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4. #include <conio.h>
  5.  
  6. struct s_nodo
  7. {
  8.    char*palabra;
  9.    struct s_nodo*sig;
  10. };
  11. typedef struct s_nodo*t_nodo;
  12.  
  13. void agregar(t_nodo*nodo);
  14. char* carga(void);
  15. void filtrar_palabras(t_nodo,t_nodo*,int);
  16. void imprimir(t_nodo);
  17. int main()
  18. {
  19.    int limite;
  20.    t_nodo lista=NULL;
  21.    t_nodo filtrada=NULL;
  22.  
  23.    agregar(&lista);
  24.    agregar(&lista);
  25.    agregar(&lista);
  26.    agregar(&lista);
  27.    printf("Palabras Originales Cargadas: \n");
  28.    imprimir(lista);
  29.    printf("\nIngrese un limite:");
  30.    scanf("%d",&limite);
  31.    printf("\nLista Modificada es : \n");
  32.    imprimir(filtrada);
  33.  
  34.  
  35.    return 0;
  36. }
  37. void agregar(t_nodo*nodo)
  38. {
  39.    if(*nodo==NULL)
  40.    {
  41.        *nodo=malloc(sizeof(struct s_nodo));
  42.        (*nodo)->palabra=carga();
  43.        (*nodo)->sig=NULL;
  44.    }
  45.    else
  46.    {
  47.        agregar(&(*nodo)->sig);
  48.    }
  49. }
  50.  
  51. char*carga(void)
  52. {
  53.    char*texto=NULL;
  54.    int i=0;
  55.    char letra;
  56.    printf("\nIngrese palabra: ");
  57.    letra=getche();
  58.    texto=malloc(sizeof(char));
  59.    if(texto==NULL)
  60.    {
  61.        printf("\nError en memoria");
  62.        return texto;
  63.    }
  64.    while(letra!='\r')
  65.    {
  66.        *(texto+i)=letra;
  67.        texto=realloc(texto,(i+i)*sizeof(char));
  68.        i++;
  69.        letra=getche();
  70.    }
  71.    *(texto+i)='\0';
  72.    return texto;
  73. }
  74.  
  75. void filtrar_palabras(t_nodo nodo,t_nodo*nodo1,int longitud)
  76. {
  77.    if(*(nodo1)=NULL)
  78.    {
  79.        if((strlen(nodo->palabra))>=longitud)
  80.        {
  81.            (*nodo1)->palabra=nodo->palabra;
  82.            (*nodo1)->sig=NULL;
  83.            nodo=nodo->sig;
  84.        }
  85.    }
  86.    else
  87.    {
  88.        filtrar_palabras(nodo,&(*nodo1)->sig,longitud);
  89.    }
  90. }
  91. void imprimir(t_nodo nodo)
  92. {
  93.  
  94.    while(nodo!=NULL)
  95.    {
  96.        printf(" %s - ",nodo->palabra);
  97.        nodo=nodo->sig;
  98.    }
  99.  
  100.  
  101.  
  102. }
  103.  


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
ejercicio 122 de C: pido ayuda -error en plena ejecución-
Ejercicios
Kr3c13nt3 4 5,053 Último mensaje 8 Marzo 2008, 20:26 pm
por Kr3c13nt3
[Consulta] Índice en listas anidadas (Python)
Scripting
evanescense 4 8,171 Último mensaje 25 Junio 2016, 03:59 am
por peter_lyon
Ejercicio de Parcial - Listas en C - No me sale.
Programación C/C++
palacio29 3 2,003 Último mensaje 20 Octubre 2016, 21:51 pm
por MAFUS
Ejercicio con listas
Java
tati2050 1 2,230 Último mensaje 2 Septiembre 2017, 01:35 am
por HardC0d3
Error lógico cuando compilo ejercicio - CONSULTA
Programación C/C++
Cero++ 6 1,968 Último mensaje 11 Diciembre 2018, 20:51 pm
por Cero++
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines