如何在C中的结构中显示链接列表

时间:2010-05-13 12:01:43

标签: c linked-list

typedef struct child_list {int count; char vo[100]; child_list*next;} child_list;
typedef struct parent_list
{ char vo[100];
child_list * head;
int count;
parent_list * next; } parent_list;

如您所见,有两种结构。 child_list用于创建链接列表。此列表将存储在父列表的链接列表中。我的问题是显示parent_list中的子列表。

我希望在显示parent_list的链接列表时获取

这列出了使用此逻辑的工作。我已经做了追加和其他的东西。

例如,如果我输入ab cd ab ja cd ab

Word    Count    List

ab        3      cd->ja

cd        2      ab->ab

ja        1      cd

有问题的部分显示child_list节点中的parent_list(输出的列表列)。我不知道我的问题很清楚,请询问更多信息。

1 个答案:

答案 0 :(得分:1)

如果您只想打印父节点及其子列表,您可以执行以下操作

void print_node(parent_list *parent_node) {
    printf("%s\t%d\t", parent_node->vo, parent_node->count);

    child_list *child_node = parent_node->head;
    while (child_node != NULL) {
        printf("%s", child_node->vo);

        child_node = child_node->next;

        if (child_node != NULL) {
            printf("->");
        }
    }
    printf("\n");
}