资源预览内容
第1页 / 共7页
第2页 / 共7页
第3页 / 共7页
第4页 / 共7页
第5页 / 共7页
第6页 / 共7页
第7页 / 共7页
亲,该文档总共7页全部预览完了,如果喜欢就下载吧!
资源描述
实验内容:线性表的创建、插入删除等#includestdio.h#includestdlib.h int*inistl(int m,int *n) /*建立线性表函数*/int*v=NULL;v=malloc(m*sizeof(int*); /*创建链表,并把首地址赋给指针V*/n=0;return v;void insl(int*v,int m,int*n,int i,int b)/*在链表指定位置插入元素b*/int j;if(*n=m) /*检查是否链表溢出*/printf(the stack is overflown);return;if(i*n-1) i=*n+1; /*若插入点大于元素位置则在表的结束插入*/if(i=i;j-) /*首位之间任意位置的插入*/vj=vj-1;vi-1=b;*n=*n+1; /*插入后元素统计指针加1*/void desl(int*v,int m,int*n,int i) /*线性表删除函数*/int j;if(*n=0) /*判断线性表是否为空*/printf(the stack is underflown );return;if(i*n) /*删除点在首部以前和尾部以后特殊情况排除*/printf(not this element in the list!);return;for (j=i;j=*n-1;j+) /*在允许位置做删除操作*/vj-1=vj;*n=*n-1; /*元素统计指针减1*/return;) void input(int*v,int n) /*空表起始输入元素函数*/int i;for(i=0;in;i+ /*利用循环指针输入元素*/scanf(%d,v+i);void output(int*v,int n) /*线性表输出打印函数*/int i;for(i=0;i*n-1);i=*n+1;if(i=i:j+)vj=vj-1;vi-1=b;*n=*n+1;return;void desl(int m,int *n,int v,int i)if(*n=0)printf(underflow n);return;if(i*n)printf(Not this element)input(int *v,int n)for(i=0;i*n;i+)scanf(%d,v+i);output(int v,int *n)for(i=0;i*n;i+)printf(%d,v+i);void main()int *v=NULL,m,*n=NULL,i,b;n=malloc(sizeof(int);printf(请输入空间容量:);scanf(%d,&m);v=initsl(m,n);printf(请输入实际个数:);scanf(%d,n);input(v,*n);printf(请输入插入位置:);scanf(%d,&i);printf(请输入插入元素:);scanf(%d,&b);insl(v,m,n,i,b);output(v,*n);printf请输入删除位置:);scanf(%d,&i);desl(v,m,n,i);output(v,*n);软件技术实验#include stdlib.h void initsl(v,m,n)int *initsl(int m,int *n);int *v=NULL;v=malloc(m*sizeof(int);return v;insl(v,m,n,i,b)void v,b; int m,*n,i; if (*nm) printf(overflow n); return; if (i*n1) i*n1; if (i1) i1; for (j*n;ji;j) vjvj1; vi1b; *n *n1; return; desl(v,m,n,i) void v; int m,*n,i; if (*n0) printf(underflow n);return; if (i1) | | (i*n) printf(Not this element in the list n); return; for (ji;j*n1;j) vj1vj; *n *n1; return;input(int *v,int n)for(i=0;i=m) /*检查是否链表溢出*/printf(the stack is overflown);return;void insl(int*v,int m,int*n,int i,int b)/*在链表指定位置插入元素b*/ int j;if(*n=m) /*检查是否链表溢出*/printf(the stack is overflown);return;if(i*n-1) i=*n+1; /*若插入点大于元素位置则在表的结束插入*/if(i=i;j-) /*首位之间任意位置的插入*/vj=vj-1;vi-1=b;*n=*n+1; /*插入后元素统计指针加1*/void d
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号