hehe肯定是你的程序错误,有值并不代表正确,尤其是在链表调试(指针调试),有值也许是随机值。看看你的节点指向是否正确,另外看看结点创建正确吗?
解决方案 »
- 关于tchart坐标轴的一些问题
- 如何禁止往某个盘符或者某个目录下写文件?
- 散分
- 对BLOB类型字段添加时遇到错误了.
- 在1024*768下做的程序如何才能让它在800*600下也能正常显示?
- implicitly imported into package,什么意思啊?
- 函数声明问题
- 怎样将电脑中TXT一个文件导到LISTBOX中.(TXT格式内详)
- delphi ado 可以连接linux db2 ?怎么连接,都需要配置什么东西
- 一款新的3D引擎,看一下效果怎样?
- 太高兴了!昨天 的可用分还是100多,今天就500多了,是系统出错?还是免费赠送。可赠送也应该有提示啊。
- 请问现在有什么好的软件可以方便地写程序流程图?
procedure CreateNew(var Item:PMyRecord);//建立新节点
begin
New(Item);
Item^.next:=nil;
Item^.MyPoint.x:=0;
Item^.MyPoint.y:=0;
end;
procedure GetPoint(var Current:PMyRecord;ReadPoint:TPoint);//给点附值
begin
Current^.MyPoint.x:=ReadPoint.x;
Current^.MyPoint.y:=ReadPoint.y;
end;
/////或许是有问题
procedure AddPoint(var Current:PMyRecord;FatherPoint:Tpoint);//在当前链表后
//插入新节点
var
temp:PMyReCord;
begin
CreateNew(temp);
GetPoint(temp,FatherPoint);
Current^.next:=temp;
Current:=temp;
end;
Function CreateRanPoint(MAX:integer):PMyRecord;//创建一个表长为max的链表
var
RanFirst,Current:PMyRecord;
i: integer;
addpoint:tpoint;
begin
CreateNew(Current);
ranfirst:=Current;
ranfirst^.Mypoint:=randompoint;
i:=1;
repeat
inc(i);
addpoint:=randompoint;
AddPoint(Current,addpoint);
until (i=MAX);
//current:=ranfirst;
result:=ranfirst;
end;
Function Randompoint:tPoint;//生成随机点
var temp,ix,jy:integer;
begin
randomize;
temp:= random(500*500)+1;
ix:=temp div 500;
jy:=temp mod 500;
result.x:=ix;
result.y:=jy;
end;
原来毛病出在randomize!!!
;
Function Randompoint:tPoint;//生成随机点
var temp,ix,jy:integer;
begin
// randomize;
毛病!!!
Function CreateRanPoint(MAX:integer):PMyRecord;//创建一个表长为max的链表
var
RanFirst,Current:PMyRecord;
i: integer;
addpoint:tpoint;
begin
CreateNew(Current);
ranfirst:=Current;
ranfirst^.Mypoint:=randompoint;
i:=1;
// 加在这!!!
randomize;
repeat
inc(i);
addpoint:=randompoint;
AddPoint(Current,addpoint);
until (i=MAX);
//current:=ranfirst;
result:=ranfirst;
end; temp:= random(500*500)+1;
ix:=temp div 500;
jy:=temp mod 500;
result.x:=ix;
result.y:=jy;
end;