free pascal编程:给出n个数,你要将这n个数从小到大排序输出,源程序如下,var a:array[1..10] of longint; i,j,t,n:longint;begin readln(n); for i:=1 to n do read(a[i]); for i:=1 to n-1 do for j:=i+1 to n do begin if a[i]>a[j] then b
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/23 03:13:23
![free pascal编程:给出n个数,你要将这n个数从小到大排序输出,源程序如下,var a:array[1..10] of longint; i,j,t,n:longint;begin readln(n); for i:=1 to n do read(a[i]); for i:=1 to n-1 do for j:=i+1 to n do begin if a[i]>a[j] then b](/uploads/image/z/13922017-25-7.jpg?t=free+pascal%E7%BC%96%E7%A8%8B%EF%BC%9A%E7%BB%99%E5%87%BAn%E4%B8%AA%E6%95%B0%2C%E4%BD%A0%E8%A6%81%E5%B0%86%E8%BF%99n%E4%B8%AA%E6%95%B0%E4%BB%8E%E5%B0%8F%E5%88%B0%E5%A4%A7%E6%8E%92%E5%BA%8F%E8%BE%93%E5%87%BA%2C%E6%BA%90%E7%A8%8B%E5%BA%8F%E5%A6%82%E4%B8%8B%2Cvar+a%3Aarray%5B1..10%5D+of+longint%3B+i%2Cj%2Ct%2Cn%3Alongint%3Bbegin+readln%28n%29%3B+for+i%3A%3D1+to+n+do+read%28a%5Bi%5D%29%3B+for+i%3A%3D1+to+n-1+do+for+j%3A%3Di%2B1+to+n+do+begin+if+a%5Bi%5D%3Ea%5Bj%5D+then+b)
free pascal编程:给出n个数,你要将这n个数从小到大排序输出,源程序如下,var a:array[1..10] of longint; i,j,t,n:longint;begin readln(n); for i:=1 to n do read(a[i]); for i:=1 to n-1 do for j:=i+1 to n do begin if a[i]>a[j] then b
free pascal编程:给出n个数,你要将这n个数从小到大排序输出,源程序如下,
var
a:array[1..10] of longint;
i,j,t,n:longint;
begin
readln(n);
for i:=1 to n do
read(a[i]);
for i:=1 to n-1 do
for j:=i+1 to n do
begin
if a[i]>a[j] then
begin
t:=a[j]; a[j]:=a[i]; a[i]:=t;
end;
end;
for i:=1 to n do
writeln(a[i]);
end.下面有段话,其实该程序还可以进一步优化,再为第i位选择一个最大的数时,可以在[i,n]范围内先选好最大的数,最后进行一次交换,这样减少了很多交换次数.,什么在为第i为选择一个最大得数啊?还再[i,n]先选好,.
free pascal编程:给出n个数,你要将这n个数从小到大排序输出,源程序如下,var a:array[1..10] of longint; i,j,t,n:longint;begin readln(n); for i:=1 to n do read(a[i]); for i:=1 to n-1 do for j:=i+1 to n do begin if a[i]>a[j] then b
var
a:array[1..10] of longint;
i,j,t,n:longint;
max:longint; {增加一个临时变量,用其保存最大的序号}
begin
readln(n);
for i:=1 to n do
read(a[i]);
for i:=1 to n-1 do begin
max:=i; {先假设下标为i的元素为最大}
for j:=i+1 to n do if a[j]>a[max] then max:=j; {如果找到比假设大的,记下它的下标}
if maxi then {只有当循环后的max不等于i时才交换}
begin
t:=a[i]; a[i]:=a[max]; a[max]:=t;
end;
end;
for i:=1 to n do
writeln(a[i]);
end.