资源预览内容
第1页 / 共6页
第2页 / 共6页
第3页 / 共6页
第4页 / 共6页
第5页 / 共6页
第6页 / 共6页
亲,该文档总共6页全部预览完了,如果喜欢就下载吧!
资源描述
数组元素的移动与插入一、数组元素的移动:在数组(A)中,存放了一系列的数据(A1An) ,要把后面(前面)的K个数据移动到前面(后面)去, 称为数组元素的移动。数组A:A1An AmA1An Am例1、将A(10个数)数组中从第m(7)个元素起一直到最后的元 素平移到数组的开头,并把A1到Am-1中的元素向后顺移。解题步骤:1、输入N(10)个数:用循环2、把最后一个数放入变量K中,3、把A1到An-1中的数,按照从后到前的方式移动到 A2到An中:An-1到An,An-2到An-14、把K中的值放入A1中。第2到4步完成了An到A1的移动,重复它们N-M+1次 ,就完成了本题的要求。程序:VARA:ARRAY1.10 OF INTEGER; I,J,M,K:INTEGER; BEGINFOR I:=1 TO 10 DO READ(AI); READLN;FOR J:=1 TO 4 DOBEGIN K:=A10;FOR I:=9 DOWNTO 1 DOAI+1:=AI;A1:=K;END; FOR I:=1 TO 10 DOWRITE(AI:5); END.2、插入数组元素思路:在数组的某个位置插入一个数据。首先要把该位置 以后的数据后移一个位置,空出该位置来,再把该数放入 该位置。例2、将一个数插入到有序的数列中,要求该数列 仍然有序。步骤: 1 、输入一个有序数列。2、查找该数要插入的位置J。3、移动从J到N上的所有数据至J+1到N+1上。4、插入数据到空出来的第J个位置上。VarA:array1.11 of integer;I,J,X:integer;Beginfor i:=1 to 10 doread(ai);readln(x);J:=1;while (xaj) and (j=10) doj:=j+1;for i:=10 downto j doai+1:=ai;aj:=x;for I:=1 to 11 dowrite(ai:5);writeln;End.作业:P121 6,7
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号