你真是个天才。
$y1=GUICtrlCreateInput($x1,110,350,80,30)
_CallSelf($y1)Func _CallSelf($n,$m)
MsgBox(0,"",$n)
If $n = 0 Then
Exit
Else
for $a=0 to $m step 1
_CallSelf($n-1,$m)
$n-=1
EndIf
EndFunc这样行不行? 回复 16# sanye000001
行不行,你试试啊。看看是不是你要的效果。 回复 15# MicroBlue
你真是个天才。
$y1=GUICtrlCreateInput($x1,110,350,80,30)
_CallSelf($y1)Func _CallSelf($n,$m)
MsgBox(0,"",$n)
If $n = 0 Then
Exit
Else
for $a=0 to $m step 1
next
_CallSelf($n-1,$m)
EndIf
EndFunc应该不行,因为for……next这个变成一层,我需要的是层层内嵌,即for……for……for…………next……next……next
Global $k = 0
dosomething(6,5)
ConsoleWrite($k&@CRLF)
Func dosomething($n, $deep)
For $i = 0 to $n
If(1 == $deep)then
$k += 1
Else
dosomething($n, $deep - 1)
EndIf
Next
EndFunc
$k = 0
For $i = 0 To 6
For $i2 = 0 To 6
For $i3 = 0 To 6
For $i4 = 0 To 6
For $i5 = 0 To 6
$k += 1
Next
Next
Next
Next
Next
ConsoleWrite($k&@CRLF)
回复 18# sanye000001
递归本来就可以达到多重循环的效果,lz如果没试过,不要妄下结论 本帖最后由 annybaby 于 2012-10-30 02:10 编辑
回复 19# seeyou
抱歉,回复错误楼层了~~ 回复 18# sanye000001
自身调用自身啊,递归来的,fibonacci,N!等问题的笨办法都会用到递归,你后面的多重for循环可以用下面的代码来代替,其实类似的变通一下就可以
Local $k = 0
_for(5)
Func _for($n)
For $i = 1 To 7^$n
$k += 1
Next
EndFunc
ConsoleWrite($k&@CRLF) 好像是递归意思吧。 MicroBlue 发表于 2012-10-29 23:13
递归啊,牛人,膜拜
页:
1
[2]