사실 이론 이해 못한거임?...
돌아버리겠네 ...

#include <stdio.h>
#include <stdlib.h>
#define TRUE 1;
#define FALSE 0;
typedef struct G_graph
{
    int item, index;// item , index = number of link
    struct G_graph *link[10];
}graph;

void graphInit(graph *,int NewItem);
void appendNode(graph *,int );
void deleteNode(int );
graph isIn(int );
graph *BFS(graph *);
graph *DFS(graph *);



void graphInit(graph *first, int NewItem)
{
    int i = 0;
    first->item = NewItem;
    first->index = 0;
    for(i = 0; i < 10; i++)
    {
        first->link[i] = NULL;
    }
}
void appendNode(graph *prev ,int NewItem)
{
    int i = 0, j = 0;
    graph *temp = prev;
    graph *Node = malloc(sizeof(graph));
    Node->item = NewItem;
    Node->index = 0;
    while(1)
    {
        for(i = 0; i < 10; i++)
        {
            if(temp->link[i] == NULL)
            {
                temp->link[i] = Node;
                return;
            }
        }
        temp = temp->link[j];
        j++;
        if(j == 10)
        {
            j = 0;
        }
    }
}
void BFS(graph *head)
{
    int i, index = head->index;
    int que[20] = {0,}, report[20] = {0,};
    graph *temp = temp;
    report[0] = head->item;
    while()
    {
        for(i = 0; i < index; i++)
        {
            temp = temp->link[i];
            que[i] = temp->item;
        }
    }
}