收藏 分享(赏)

C语言指针链表.doc

上传人:eukav 文档编号:9478740 上传时间:2019-08-09 格式:DOC 页数:5 大小:36KB
下载 相关 举报
C语言指针链表.doc_第1页
第1页 / 共5页
C语言指针链表.doc_第2页
第2页 / 共5页
C语言指针链表.doc_第3页
第3页 / 共5页
C语言指针链表.doc_第4页
第4页 / 共5页
C语言指针链表.doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

1、/*时间:2010 年 8 月 28 日 17:19:49*功能:C 语言实现单链表的建立、输入、插入、删除、查找元素并返回位置*/#include“stdio.h“#include“stdlib.h“#include“malloc.h“/*假设输入的数据为 3 个-我比较好操作-_-*/#define size 3typedef struct Listint num;int shuju;struct List *next;list;/*头结点*/list *setup_list(list *head)printf(“setup_listn“);head=malloc(sizeof(list)

2、;if(head=NULL)printf(“setup failn“);getch();exit(0);head-num=NULL;head-shuju=NULL;head-next=NULL;printf(“setup successn“);return head;/*输入数据*/void input(list *head,int num)list *q=NULL;list *s=NULL;s=malloc(sizeof(list);s-next=NULL;printf(“input the %d data:“,num);scanf(“%d“,s-num=num;q=head;while(q

3、-next!=NULL)q=q-next;q-next=s;/*浏览*/void browse(list *head)list *q=NULL;q=head-next;while(q!=NULL)printf(“num:%dn“,q-num);printf(“shuju:%dn“,q-shuju);q=q-next;/*插入 num 值有主函数控制*/void insert_list(list *head,int num)list *q=NULL;list *p=NULL;list *s=NULL;q=head;p=q-next;while(p!=NULLp=q-next;s=malloc(s

4、izeof(list);printf(“input shuju“);scanf(“%d“,s-num=num;q-next=s;s-next=p;/*整理 num 后面的数后推*/while(p!=NULL)num+;p-num=num;p=p-next;void delete_list(list *head,int num)list *q=NULL;list *p=NULL;q=head;p=q-next;while(p!=NULLp=q-next;q-next=p-next;free(p);printf(“num %dn“,num);p=q-next;while(p!=NULL)p-num

5、=num;num+;p=p-next;/*查找元素 并返回位置*/list *find_list(list *head,int data)list *q=NULL;list *p=NULL;q=head;p=q-next;while(p!=NULLp=q-next;printf(“num :%d data : %dn“,p-num,p-shuju);return p;exit_list(list *head)printf(“exit ok“);free(head);getch();main()int middle=0;int num=0;int i=0;list *head=NULL;list

6、 *s=NULL;/*接收指针 case3 的指针接收*/head=setup_list(head);printf(“head-next %dn“,head-next);printf(“head-num %dn“,head-num);printf(“head-shuju %n“,head-shuju);getch();for(i=0;isize;i+)input(head,num);num+;browse(head);*/*1 插入 2 删除 3 查找 4 浏览 5 退出*/*for(;) printf(“input middle:“);scanf(“%d“,switch(middle)cas

7、e 1:printf(“insert ninput num:“);scanf(“%d“,insert_list(head,num);break;case 2:printf(“delete ninput num:“);scanf(“%d“,delete_list(head,num);break;case 3:printf(“find ninput data:“);scanf(“%d“,s=find_list(head,num); /*数据查找 s 已经接收,至于你要做什么,我就不懂了,你自己添加*/break;case 4:browse(head);break;case 5:exit_list(head);return;/*输入异常的时候 */default:break;

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报