第二次上机实验报告.docVIP

  • 5
  • 0
  • 约3.39千字
  • 约 11页
  • 2018-04-23 发布于河南
  • 举报
第二次上机实验报告

实验二、顺序表的相关操作 有序的一组整数,1-2-3-4-6-5-9-19设计顺序表并实现以下操作:A.初始化线性表;B.添加上述一组数;C.删除第四个数据元素; D.显示B,C操作后的结果。 #includestdio.h #define MAXNUM 10 #define true 1 #define false 0 typedef int elemtype; typedef struct listtype { elemtype data[MAXNUM]; int num; }listtype; void initiatelist(listtype *l) { l-num=0; } int delete(listtype *l,int i) { int j; if((i0)||(il-num-1)) {printf(not exist); return(false);} for(j=i+1;jl-num;j++) l-data[j-1]=l-data[j]; l-num--; return(true); } int main() { int i; listtype list; initiatelist(list); printf(please input the data); list.num=8; for(i=0;ilist.num;i++) { scanf(%d,list.data[i]); printf(\n); printf(%d,list.data[i]); } delete(list,3); for(i=0;ilist.num;i++) { printf(\n); printf(%d,list.data[i]); } } 运行结果: 设线性表存放在向量A[1..MAXNUM]的前elenum个向量中,且有序递增。试写一算法,将x插入到合适的位置,以保持线性表的有序性。 #includestdio.h #define MAXNUM 10 #define true 1 #define false 0 typedef int elemtype; typedef struct listtype { elemtype data[MAXNUM]; int num; }listtype; void initiatelist(listtype *l) { l-num=0; } int insert(listtype *l,elemtype x) { int j,k; if (l-num=MAXNUM) { printf(full); return(false); } if(x=l-data[l-num-1]) { l-data[l-num]=x; l-num++; return(true);} for(j=0;jl-num-1;j++) { if(x=l-data[0]) { for(j=l-num-1;j=0;j--) l-data[j+1]=l-data[j]; l-num++;l-data[0]=x; return(true);} if(x=l-data[j]x=l-data[j+1]) { for(k=l-num-1;k=j+1;k--) l-data[k+1] =l-data[k]; l-data[j+1]=x;l-num++; return(true); } } return(true); } void main() { int i; listtype list; elemtype x; initiatelist(list); printf(please input the data); list.num=8; for(i=0;ilist.num;i++) { scanf(%d,list.data[i]); printf(\n);}for(i=0;ilist.num;i++) printf(%d,list.data[i]); printf(please enter data); scanf(%d,x); insert(list,x); for(i=0;ilist.num;i++)

文档评论(0)

1亿VIP精品文档

相关文档