>>605
そうすると今度はtraverseNode()で判定が必要になりそうなので、場合に依り
けりでは。少なくとも、addNode()は再帰を使ってきれいにまとまってると思
うし。

ついでにいうと、ケツを探すということに関しては、
LIST *root, **p = &root;
while (*p) p = &(*p)->next;
という書き方もできる。