书山有路勤为径,学海无涯苦作舟!qiang.blog.chinaunix.net
dongliqiang1985
全部博文(262)
2012年(1)
2011年(168)
2010年(92)
2009年(1)
ai616818
crjwlaq
ARMzyp
2909157
jyhhappy
zhanglia
yuweixia
kylie201
doopney
cynthia
浪花小雨
格伯纳
Anthony_
飒沓沓沓
mude918
top04137
shouyu92
Hey_Ligh
分类: C/C++
2010-12-16 14:17:26
/* * LinkList.c * * Created on: 2010-12-16 * Author: qiang */ #include <stdio.h> #include <stdlib.h> typedef int ElemType; typedef int Status; typedef struct LNode{ //定义单链表数据结构 ElemType data; struct LNode* next; }LNode,*LinkList; //初始化一个空链表 LinkList LinkListInit() { LNode* L; L = (LNode*)malloc(sizeof(LNode)); if(L==NULL) printf("申请内存空间失败"); L->next = NULL; return L; } //创建一个单链表 LinkList LinkListCreat() { //创建头节点 LNode* L; L = (LNode*)malloc(sizeof(LNode)); if(L==NULL) printf("分配空间失败!\n"); L->next=NULL; //头节点为空 //定义节点r,r始终指向尾节点 LNode* r; r = L; //其实r指向头节点 //添加新节点 int i; printf("请输入链表数据,CTRL+D结束! \n"); while(scanf("%d",&i)!=EOF) { LNode* p; p = (LNode*)malloc(sizeof(LNode)); p->data = i; r->next = p; //和前节点建立关系 r = p; //r节点后移 } printf("创建的链表的数据为: \n"); LNode* q; for(q=L->next;q!=NULL;q=q->next) printf("List data:%d \n",q->data); //添加尾节点 r->next = NULL; return L; } int main() { LNode* L; L = LinkListCreat(); return 0; }
上一篇:单链表操作-C语言
下一篇:单链表的逆转-C语言
登录 注册