C语言链表课件.ppt

C语言链表课件.ppt

ID:57057165

大小:250.50 KB

页数:15页

时间:2020-07-30

C语言链表课件.ppt_第1页
C语言链表课件.ppt_第2页
C语言链表课件.ppt_第3页
C语言链表课件.ppt_第4页
C语言链表课件.ppt_第5页
资源描述:

《C语言链表课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、5.6动态内存管理函数相关函数的声明在头文件stdlib.h中malloc(size);//size表示内存字节数返回的是分配的地址。将该地址赋值给指针变量时,通常要做强制类型转换free(pointer);//pointer是指向malloc分配的内存区的指针变量[例5.14]基于指针数组的动态内存分配和释放。#defineN3#include#includevoidrelease(int**p){inti,j;for(i=0;i

2、p[i][j]);free(p[i]);//释放内存putchar('');}}voidmain(){inti,j;int*p[N];//定义长度3的指针数组for(i=0;i

3、元素(data)指针(next)结点链表使用内存分配函数,动态申请和释放堆中的存储空间。P124structnode{//定义节点类型intdata;node*next;};voidmain(){node*h;h=CreList();PrintList(h);}node*CreList(){nodeA_node;node*head;//首地址node*s;//当前结点head=NULL;printf("Pleaseinputthenumber(0theend):t");scanf("%d",&A_node.data);while(A_node.data!=0){s=(

4、node*)malloc(sizeof(node));s->data=A_node.data;s->next=head;head=s;printf("Pleaseinputthenumber(0theend):t");scanf("%d",&A_node.data);}returnhead;}structnode{intdata;node*next;};voidPrintList(node*head){node*p;p=head;while(p!=NULL){printf("datais%d",p->data);p=p->next;}}L28375^P(1)L=P

5、->link;R(2)R->data=P->data;28375^PR对以下单链表分别执行下列各程序段,并画出结果示意图。LP28375^5(3)R->data=P->link->data;28375^PR(4)P->link->link->link->data=P->data;28375^PRL28375^PRP->link7P->link->link->link5(5)T=P;while(T!=NULL){T->data=(T->data)*2;T=T->link;}LS2^PR1014616(6)T=P;while(T->link!=NULL){T->data=(T-

6、>data)*2;T=T->link;}LS2^PR101468LS28375^PR(7)在R之后插入一个结点P=(JD*)malloc(sizeof(JD));P->data=10;R->link=P;P->link=S;LS28375^RPLS28375^R10如果没有定义变量S?(7)在R之后插入一个结点P=(JD*)malloc(sizeof(JD));P->data=10;P->link=R->link;R->link=P;L28375^RP10L28375^R(8)T=L;T->link=P->link;free(P);T(9)S->link=L;LS28375

7、L28375^P设L是非空单链表的头结点指针,单链表中存储了非负整数。请用C语言设计如下算法,不另行开辟表结点存储空间。(1)计算该单链表中值为奇数的结点个数;(2)改变该单链表中值为奇数的全部结点,使得这些结点的值加上1后再依次排在原有值为偶数的全部结点之后,并要求不改变原有奇数结点的前后次序和偶数结点的前后次序关系。typedefstructLnode{intdata;//非负整数structLnode*next;}Lnode,*LinkList;intCount_LinkList(LinkList&L){Li

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。