example 1:创建单向链表,最基本的实现方式。
#include <stdio.h> #include <malloc.h> #define NULL 0 typedef struct node{ int data; struct node *next; //不能使用ElemSN }ElemSN; int main() { ElemSN *head, *p; int i, ms;/*ms用来存放结点的个数*/ int x; printf("Please input node number:"); scanf("%d", &ms); head = p = (ElemSN *)malloc(sizeof(ElemSN)); printf("Please input data:"); scanf("%d", &x); head->data = x; head->next = NULL;/*创建第一个结点,因为是头结点,和后面的结点有些不一样所以单独写出来*/ for(i = 0; i < ms-1; i++)/*创建后面的ms-1个结点*/ { p->next = (ElemSN *)malloc(sizeof(ElemSN)); printf("Please input data:"); scanf("%d", &x); p->next->data = x; p->next->next = NULL; p = p->next; } for(p = head; p != NULL; p = p->next) { printf("%d ", p->data); } printf("\n"); }
链表(一)——创建一个最基本的单向链表,布布扣,bubuko.com
原文地址:http://blog.csdn.net/laoniu_c/article/details/37773435