从简盘上输入10个数从大到小排列(冒泡法和选择法))
来源:百度知道 编辑:UC知道 时间:2024/06/19 03:27:39
var a:array[0..10] of longint;
i,j,t:longint;x:boolean;
begin
a[0]:=10;//10个数
for i:=1 to a[0] do
read(a[i]);//读入
for i:=1 to a[0] do
begin
x:=true;//初始化判断,表示本次是否有调整顺序
for j:=1 to a[0]-i do//枚举进行冒泡
if a[j]<a[j+1] then
begin
t:=a[j];
a[j]:=a[j+1];
a[j+1]:=t;
x:=false;//交换位置并将判断改为false表示有调整顺序
end;
if x then
break;//如果没有调整顺序则表示排序结束
end;
for i:=1 to a[0] do
write(a[i],' ');//输出
end.
var a:array[0..10] of longint;
i,j,x:longint;
begin
a[0]:=10;
for i:=1 to a[0] do
read(a[i]);
for i:=1 to a[0] do
for j:=i+1 to a[0] do//枚举2个数字,保证i<j使a[i]>a[j]
if a[i]<a[j] then
begin
x:=a[i];
a[i]:=a[j];
a[j]:=x;
end;//交换顺序
for i:=1 to a[0] do
writ