tree.c~ 915 Bytes
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>

typedef struct node* Node;

typedef struct node {
  char letter;
  Node next[26];
  bool endWord;
}node;

void mk_empty_tree(Node* Tree)
{
  *Tree = NULL;
}

bool is_empty_tree(Node* Tree)
{
  return(*Tree==NULL);
}

void init_tree(Node* Tree)
{
  if(is_empty_tree(Tree))
    {
      *Tree = malloc(sizeof(Node));
      Tree->letter = '?';
      Tree->endWord = false;
      for(int i=0; i<26; i++)
	Tree->next[i] = NULL;
    }
}

void add_in_tree(Node Tree, char word[])
{
  char letter = word[0];
  while(letter != '/0')
    {
      if(Tree->next[letter-'a']!=NULL)
	Tree = Tree->next[letter-'a'];
      else
	{
	  Node new = NULL;
	  new = malloc(sizeof(Node));
	  new->letter = letter;
	  for(int i=0; i<26; i++)
	    {
	      new->next[i]=NULL;
	    }
	  Tree->next[letter-'a'] = new;
	}
    }
  
}


int main(int argc, char argv[])
{
  return 0;
}