5. 使用 linked list 實作 stack,運用以下 C 語言程式:

typedef struct node { int value; node *next;}

void push (node **top, int new_value) { // assume top is not null

node *new_node = (node *) malloc (sizeof (node));

// 實作以下敘述

// add new_node to stack by top

}