您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 实验1、有序表的建立、插入与删除
实验一、有序表的建立、插入和删除一、实验目的:1、了解有序表的顺序存储结构。2、掌握有序表元素在内存中是怎么存储的。3、在有序表中实现如下操作:1)插入一个新元素到第i个位置,使原来标号为增一;2)删除第i个位置的元素;3)存一个新元素到第i个位置;4)读表;5)检索表中第i个元素;6)寻表的长度;二、实验步骤:1、参考实验程序自己编出的程序,上级调试。2、对调试好的程序进行以下实验:当机器显示表长时,可以渐入一个小于100的整数,然后根据功能表做:1:表示有序表的插入;2:表示有序表的删除;3:表示存新值;4:表示检索第i个元素;5:表示查表长;三、参考程序:#includestdio.hstaticintarray[100];intj,i,n,p;intch;voiddu(){printf(pleasetellmewhichnumberdoyouoperate:);scanf(%d,&i);while(in){printf(error,pleaseinputagain);scanf(%d,&i);}}voidda(){printf(thelistis);for(j=0;jn;j++)printf(%4d,array[j]);printf(\n);}voidshow(){printf(-------------------\n);printf(thefunctionofthelist\n);printf(1:insert\n);printf(2:delete\n);printf(3:savenewelement\n);printf(4:readlist\n);printf(5:check\n);printf(6:thelengthofthelist\n);printf(0:end\n);printf(--------------------\n);}voidmain(){printf(pleaseinputthelengthoflist:);scanf(%d,&n);printf(\n);printf(pleaseentertheelements:);for(i=0;in;i++)scanf(%d,&array[i]);p=1;while(p!=0){show();printf(enterp:);scanf(%d,&p);if(p=0&&p=6){switch(p){case1:printf(theinsertednumberplacesthefrontoftheoperation:\n);du();for(j=n-1;j=i-1;j--)array[j+1]=array[j];printf(pleaseenternumber:);scanf(%d,&ch);array[i-1]=ch;n++;da();break;case2:du();for(j=i-1;j=n;j++)array[j]=array[j+1];n--;da();break;case3:du();printf(pleaseenternewelement:\n);scanf(%d,&ch);printf(\n);array[i-1]=ch;da();break;case4:da();break;case5:du();printf(whatisthe%dnumber:,i);printf(%3d\n,array[i-1]);break;case6:printf(thelengthofthelistis:);printf(%3d\n,n);break;case0:p=0;break;}}}printf(error,pleaseenternewnumber);}四、运行结果:
本文标题:实验1、有序表的建立、插入与删除
链接地址:https://www.777doc.com/doc-3195622 .html