fork download
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <malloc.h>
  4. #include <string.h>
  5.  
  6. typedef int bool;
  7. enum { false, true };
  8.  
  9. // elemento da lista
  10. typedef struct estr {
  11. char letra;
  12. struct estr *prox;
  13. } NO;
  14.  
  15. typedef struct {
  16. NO *inicio;
  17. } LISTA;
  18.  
  19. void inicializarLista(LISTA *l) {
  20. l->inicio = NULL;
  21. }
  22.  
  23. void criarLista(LISTA *l, char plvr[]) {
  24. NO *ult = NULL;
  25. for (int i = 0; i < strlen(plvr); i++) {
  26. NO *novo = (NO *) malloc(sizeof(NO));
  27. novo->letra = plvr[i];
  28. novo->prox = NULL;
  29. if (ult) {
  30. ult->prox = novo;
  31. } else {
  32. l->inicio = novo;
  33. }
  34. ult = novo;
  35. }
  36. }
  37.  
  38. void imprimirLista(LISTA l) {
  39. NO *p = l.inicio;
  40. while(p) {
  41. printf("%c", p->letra);
  42. p = p->prox;
  43. }
  44. }
  45.  
  46. int main() {
  47. LISTA l;
  48. inicializarLista(&l);
  49. char palavra[] = "caio";
  50. //fgets(palavra, 3, stdin);
  51. criarLista(&l, palavra);
  52. imprimirLista(l);
  53.  
  54. return 0;
  55. }
Success #stdin #stdout 0s 9424KB
stdin
Standard input is empty
stdout
caio