资源描述:
《太原理工大学计算机软件技术基础线形顺序表的插入与删除实验报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、太原理工大学现代科技学院计算机软件技术基础课程实验报告专业班级学号姓名指导教师太原理工大学现代科技学院实验报告……………………………………装………………………………………订…………………………………………线………………………………………实验名称线形顺序表的插入与删除同组人专业班级学号姓名成绩实验目的与要求:理解和掌握线性表的顺序存储结构,使用C语言根据相应算法编写一个程序,实现线性顺序表的插入与删除。要求仔细阅读下面的内容,编写C程序,上机通过,并观察其结果,写出实验报告书。实验内容:建立一个长度
2、为n的线性表,在第i个元素前面插入一个新元素b,得到一个长度为(n+1)的线性表;然后再删除第i个元素,得到长度为n的线性表。具体要求:①根据线性顺序表的插入与删除的算法编写C程序,并上机调试。②编写的C程序要求建立一个长度不小于10的线性表,输出原始线性表,输出完成插入运算后的线性表,输出删除某个元素后的线性表。③实验完成后,写出实验报告书。上机程序:#include"stdlib.h"voidinitsl(v,m,n)intv[];intm,*n;{v=malloc(m*sizeof(int)
3、);*n=0;return;}voidinsl(v,m,n,i,b,j)intv[],b;intm,*n,i;{if(*n==m){printf("overflow");return;}if(i>*n)i=*n+1;太原理工大学现代科技学院实验报告if(i<1)i=1;for(j=*n;j>=i;j--)v[j]=v[j-1];v[i-1]=b;*n=*n+1;return;}voiddesl(v,n,i,j)intv[];intj,*n,i;{if(*n==0){printf("Underf
4、low");return;}if((i<1)
5、
6、(i>*n)){printf("Notthiselementinthelist");return;}for(j=i;j<=*n-1;j++)v[j-1]=v[j];*n=*n-1;return;}main(){int*n,i,b,j,v[10];intm=10;/*initsl(v,m,n);*/printf("input8numbers:");for(i=0;i<8;i++){scanf("%d",&v[i]);*n=*n+1;}pri
7、ntf("");scanf("%d",&i);scanf("%d",&b);insl(v,m,n,i,b,j);printf("insentlist:");for(i=0;i<=8;i++)printf("%3d",v[i]);printf("");scanf("%d",&i);太原理工大学现代科技学院实验报告printf("deletelist:");desl(v,n,i,j);for(i=0;i<8;i++)printf("%3d",v[i]);printf("");get
8、ch();}实验结果: