//C++版本 #includeusing namespace std; class Node { public: int data; Node *next; }; int main() { int A[] = { 3,5,7,10,15 }; Node *head = new Node; Node *temp; Node *last; head->data = A[0]; head->next = nullptr; last = head; for(int i = 1; i < sizeof(A) / sizeof(A[0]); i++){ temp = new Node; temp->data = A[i]; temp->next = nullptr; last->next = temp; last = temp; } Node *p = head; while (p != nullptr) { cout << p->data << "->" << flush; p = p->next; } return 0; }
C语言版本
# include#include struct Node { int data; struct Node *next; }*first=NULL; void create(int A[], int n) { int i; struct Node*t, *last; first = (struct Node *) malloc(sizeof(struct Node)); first->data = A[0]; first->next = NULL; last=first; for (i = 0; i < n; i++) { t= (struct Node *) malloc(sizeof(struct Node)); t->data = A[i]; t->next = NULL; last->next = t; last = t; } } void Display(struct Node *p) { while (p != NULL) { printf("%d", p->data); p = p->next; } } void RDisplay(struct Node *p) { if (p != NULL) { RDisplay(p->next);//recursion 递归 printf("%d", p->data); } } int main() { struct Node *temp; int A[] = { 3,5,7,10,25,8,32,2 }; create(A, 8); Display(first); return 0; }



