Untitled

 avatar
unknown
plain_text
a year ago
1.0 kB
5
Indexable
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define MAX 200

typedef struct celula {
    char *palavra;
    int ocorr;
    struct celula * prox;
} * Palavras;

char * ultima (Palavras l){

    if(l == NULL){
        return NULL;
    }

    if (l->prox == NULL){
        return l->palavra;
    }

    else{
        return ultima (l->prox);
    }

}

int main(){

    Palavras p1 = malloc(sizeof(struct celula));
    Palavras p2 = malloc(sizeof(struct celula));
    

    p1->palavra = malloc(MAX * sizeof(char));
    p1->ocorr = 1;
    p1->prox = p2;

    p2->palavra = malloc(MAX * sizeof(char));
    p2->ocorr = 2;
    p2->prox = NULL;

    strcpy(p1->palavra, "Diogo Ribeiro");
    strcpy(p2->palavra, " + Paulo Alexandre");

    Palavras lista = p1;

    printf("\nUltima palavra: %s\n\nFrase: ", ultima(lista));

    for(; lista != NULL; lista = lista->prox){
        printf("%s", lista->palavra);
    }

    putchar('\n');

    free(p1->palavra);
    free(p2->palavra);
    free(p1);
    free(p2);

    return 0;
}
Editor is loading...
Leave a Comment