- C 程序的有用资源
- 按示例学习 C - 快速指南
- 按示例学习 C - 资源
- 按示例学习 C - 讨论
C 语言中的简单链表程序
实施
下面给出此算法的实施 −
#include <stdio.h>
#include <stdlib.h>
struct node {
int data;
struct node *next;
};
struct node *head = NULL;
struct node *current = NULL;
//display the list
void printList() {
struct node *ptr = head;
printf("\n[head] =>");
//start from the beginning
while(ptr != NULL) {
printf(" %d =>",ptr->data);
ptr = ptr->next;
}
printf(" [null]\n");
}
//insert link at the first location
void insert(int data) {
//create a link
struct node *link = (struct node*) malloc(sizeof(struct node));
//link->key = key;
link->data = data;
//point it to old first node
link->next = head;
//point first to new first node
head = link;
}
int main() {
insert(10);
insert(20);
insert(30);
insert(1);
insert(40);
insert(56);
printList();
return 0;
}
输出
程序的输出应为 −
[head] => 56 => 40 => 1 => 30 => 20 => 10 => [null]
linked_list_programs_in_c.htm
广告