请问这种循环怎么做?(20分)

  • 主题发起人 主题发起人 Flashcqxg
  • 开始时间 开始时间
F

Flashcqxg

Unregistered / Unconfirmed
GUEST, unregistred user!
两个query<br><br>query1.first;<br>query2.first;<br>while not query1.eof do<br>begin<br>if query2.eof then break;<br><br>if a&lt;b then<br>begin<br>....<br>query1.next;<br>end;<br><br>if a=b then<br>....<br>query1.next;<br>query2.netx;<br>end;<br>//以下这段代码是否有错误?应该如何解决?<br>if a&gt;b then<br>begin<br>....<br>query2.next;<br>end;<br>end;
 
for i:=0 to query2.recodCount-1 do<br>begin<br>&nbsp; if a&gt;b then<br>&nbsp; begin<br>&nbsp; &nbsp; .... <br>&nbsp; end;<br>&nbsp; query2.next;<br>end;<br>这样做就对了!
 
粗略看上去好像沒有什麽問題,樓上的應該不是解決的辦法吧,你這樣和樓主的有什麽不同嗎??<br><br>樓主現在遇到什麽問題嗎???
 
用while 容易死循环
 
[:)]他這裡這種做法雖然不是很可取,但是應該也不會形成死循環的條件!
 
我的问题主要在这段呀:<br><br>//以下这段代码是否有错误?应该如何解决?<br>if a&gt;b then<br>begin<br>....<br>query2.next;<br>end;<br><br>这段里面没有query1.next了呀?,当a&gt;b的时候外面的如何循环(query1)了呢?
 
是不是修改了 a,b的值~~
 
虽然在<br>if a&gt;b then<br>begin<br>....<br>query2.next;<br>end<br>这段代码中没有 query1.next; 但是有 query2.next;,当 query2 到 eof 时,由前面的:<br>if query2.eof then break;<br>语句退出循环。所以不会死循环的。
 
While not query1.eof or not query2.eof do<br>begin<br>&nbsp; if a&gt;b then <br>&nbsp; begin<br>&nbsp; &nbsp; Query1.next<br>&nbsp; end;<br>&nbsp; if a&lt;b then<br>&nbsp; begin <br>&nbsp; &nbsp;Query2.next<br>&nbsp; end;<br>end;<br>while not query1.eof &nbsp;do<br>begin<br>&nbsp;query1.next;<br>end;<br><br>While not query2.eof do<br>begin<br>&nbsp; Query2.next;<br>end;<br>这样试试看
 
TO:duxing<br>是修改了a.b的值了的。<br><br>当a&gt;b的时候,只能query2.next,而不能query1.next。 <br>当a&gt;b的时候,会做一些操作,比如a=a-b之类的。 <br>只有当a=b或a &lt;b的时候,才做query1.next的操作。<br><br>需求是这样的。
 
来自:Flashcqxg, 时间:2008-12-8 11:34:07, ID:3934261<br>我的问题主要在这段呀:<br><br>//以下这段代码是否有错误?应该如何解决?<br>if a&gt;b then<br>begin<br>....<br>query2.next;<br>end;<br><br>这段里面没有query1.next了呀?,当a&gt;b的时候外面的如何循环(query1)了呢? &nbsp;<br><br><br><br>頂你的肺 ,拜托你自己先看看你自己的代碼先,好不好!<br>你自己都了解不到這段代碼的意思,就在那裡問別人這段代碼有什麽問題!!!<br><br>你現在這段代碼遇到什麽問題了嘛,雖然代碼是垃圾點,也不知道你這段代碼是用來干什麽的,但是我沒從你的這段代碼的結構上看出什麽問題。
 
我前面已说明,代码没问题。也做了解释。你还想问什么?
 
草,現在是你究竟想問什麽問題!<br><br>你自己都知道代碼沒問題了,還上來問有沒有錯誤~~~~
 
首先你應該問問你自己,看不看得懂這段代碼為什麽要這樣寫先!<br><br>爲什麽要 <br>while not query1.eof do<br>begin<br>if query2.eof then break;<br>這樣來循環<br><br>為什麽要比較A 和B ,<br>比較完了以後要做怎樣的工作,是繼續循環 Q1 還是Q2,還是兩個都一齊循環,在怎樣的條件下一齊循環,A 和B 比較的完以後,對Q1 和Q2 的循環起什麽樣的作用……
 
接受答案了.
 
后退
顶部