|
Sub MyFavouriteThings()
Dim strPrompt, strAnswer
Dim arrThings()
Dim intCount '这之前的没什么好说的
intCount = 0 ’初始化数据。因为这个程序是为了得到用户的favourite things,但又不能事先确定用户会有多少个favourite thing,所以就一项一项问。
'intcout = 0 也就是下面循环里的case 0的情况。
Do
Select Case intCount
Case 0
strPrompt = "What is your most favourite thing?"
Case 1
strPrompt = "What is your second most favourite thing?"
Case 2
strPrompt = "What is your third most favourite thing?"
Case Else
strPrompt = "What is your " & (intCount+1) & "th most favourite thing?" ’case else 由于前面有了case 0,1,2就三项情况了,这个至少是有第四种
'情况下才会发生作用
End Select
strAnswer = Rhino.GetString(strPrompt) '得到本轮的答案并存在strAnswer这个容器里。
If IsNull(strAnswer) Then Exit Do ’当这轮没得到答案也就stranswer为空的时候,退出循环
ReDim Preserve arrThings(intCount) '重新声明arrThings(),中间的preserve是在不破坏当前数据的情况下重新定义数组的容量
arrThings(intCount) = strAnswer ’把前面的strAnswer存在ArrThings()的数组里。
intCount = intCount+1 '进入下一次循环
Loop
If intCount = 0 Then Exit Sub ’intCount=0的情况是没有得到任务答案,所以退出
Call Rhino.Print("Your " & UBound(arrThings)+1 & ’ favourite things are:") ‘在得到答案的情况下,用print方法,在命令行里打印文字,下面的也
‘好解了,就是把每一条都打印出来。
For i = 0 To UBound(arrThings)
Call Rhino.Print((i+1) & ". " & arrThings(i))
Next
End Sub
以前学过VB,现在基本不怎么会了。这个解释不知道能不能明白 |
评分
-
查看全部评分
|