资源描述:
《顺序表上机实验报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、上机实验报告学生姓名:畅京博学号:2011019040028上机实验一顺序表:ex1_11)首先创建一个顺序表:从键盘读入一组整数(长度小于等于11),按输入顺序放入顺序表,输入以-1结束(注意-1不放到顺序表内);将创建好的顺序表元素依次输出到屏幕上。2)在已创建好的顺序表中插入一个元素:从键盘读入需插入的元素值和插入位置,调用插入函数完成插入操作;然后将顺序表元素依次输出到屏幕上。3)在已创建好的顺序表中删除一个元素:从键盘读入欲删除的元素位置(序号),调用删除函数完成删除操作;然后将顺序表元素依次输出到屏幕上。4)删除顺序表中元素值为负数的所有元素,然后将顺序表元
2、素依次输出到屏幕上。#include#defineMAXNUM11#definetrue1#definefalse0typedefstruct{intdata[MAXNUM];intlength;}list_type;voidcreatelist(list_type*lp);voidprintlist(list_type*lp);intinsertlist(list_type*lp,inti,intx);intdeletelist(list_type*lp,inti);voiddelete_neg_num(list_type*lp);intmain()
3、{list_typelist;inta,data,k;createlist(&list);printlist(&list);printf("输入要插入的位置a");scanf("%d",&a);printf("输入要插入的数据data");scanf("%d",&data);insertlist(&list,a,data);printlist(&list);printf("输入要删除的位置k:");scanf("%d",&k);deletelist(&list,k);printlist(&list);delete_neg_num(&list);pri
4、ntlist(&list);printf("若执行成功,输入1;若执行失败,输入0");return(scanf("%d",&k));}/*从键盘读入一组整数(长度小于等于11),按输入顺序放入顺序表,输入以-1结束*/voidcreatelist(list_type*lp){inti,elem;lp->length=0;printf("pleaseinputdatasofthelist");for(i=0;idata[i]=elem;lp->lengt
5、h++;}}/*将创建好的顺序表元素依次输出到屏幕上*/voidprintlist(list_type*lp){inti;printf("These%drecordsare:",lp->length);if(lp->length<=0){printf("Nodata!");return;}for(i=0;ilength;i++)printf("%d",lp->data[i]);printf("lengthofthelistis:%d",lp->length);}/*在已创建好的顺序表中插入一个元素*/intinsertlist(list_typ
6、e*lp,inti,intx){intj;if(lp->length>=MAXNUM){printf("thelistisfall,cannotinsert.");return(false);}if(i<0
7、
8、(i>lp->length)){printf("iisinvalidvalue");return(false);}for(j=lp->length-1;j>=i;j--)lp->data[j+1]=lp->data[j];lp->data[i]=x;lp->length++;return(true);for(i=0;ilength;i++)printf(
9、"%d",lp->data[i]);printf("lengthofthelistis:%d",lp->length);}/*在已创建好的顺序表中删除一个元素*/intdeletelist(list_type*lp,inti){intj;if(i<0
10、
11、(i>lp->length-1)){printf("iisinvalidvalue");return(false);}for(j=i+1;jlength;j++)lp->data[j-1]=lp->data[j];lp->length--;return(true);for(i