读书人

一维静态数组有关问题新手求指教

发布时间: 2012-02-15 12:09:44 作者: rapoo

一维静态数组问题,新手求指教。
implementation
var
num:Array[1..10]of Integer;
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
m:Integer;
str:String;
begin
Edit1.Text:='';
Edit2.Text:='';
for m:=1 to 10 do
begin
str:=inputbox('请输入10个整数','输入第'+IntToStr(m)+'个整数','0');
num[m]:=StrToInt(str);
end;
for m:=1 to 10 do
Edit1.Text:=Edit1.Text+IntToStr(num[m])+',';
Edit1.Text:=Copy(Edit1.Text,1,Length(Edit1.Text)-1);
end;
procedure TForm1.Button2Click(Sender: TObject);
var
i,j,k,n:Integer;
begin
for i:=1 to 9 do
begin
k:=10-i;
for j:=1 to k do
begin
if (num[j]>num[j+1]) then
begin

n:=num[j];
num[j]:=num[j+1];
num[j+1]:=n;
end;
end;
end;
for i:=1 to 10 do
Edit2.Text:=Edit2.Text+FloatToStr(num[i])+',';
Edit2.Text:=Copy(Edit2.Text,1,Length(Edit2.Text)-1);
end;
end.
在Button2按钮程序里的2个for循环嵌不是很理解,求高手指点(越详细越好)。
还有begin一般是用在什么情况下 ? 为什么这个for i:=1 to 10 do 后面就没有begin ?

希望爱心人士帮帮忙,小弟感激不尽。


[解决办法]
如果类似if for的语句后只有一行可以省略begin end
在Button2按钮程序里的2个for循环.............这个就是简单的数组项替换好么?没有任何难度,看不懂就跟踪进去看看变量里的值就明白了
[解决办法]

探讨
如果类似if for的语句后只有一行可以省略begin end
在Button2按钮程序里的2个for循环.............这个就是简单的数组项替换好么?没有任何难度,看不懂就跟踪进去看看变量里的值就明白了

[解决办法]
这是神马?
[解决办法]
探讨
[img]http://forum.csdn.net/PointForum/ui/scripts/csdn/Plugin/003/onion/3.gif[/img]

[解决办法]
运行之后,跟踪一下。
你就会明白。
[解决办法]
2个for是实现数组排序,这是常用的算法

for后面只是单句可以不用begin …end
若后面也是另一个循环体如for, while, repeat…或者with,case…等等
把它看成一个整体,相当于一句,所以也可不用,如何代码太长的话,最好加上。

读书人网 >.NET

热点推荐