循环中的一个问题,不是太明白。。。

rena12 2003-09-03 10:23:01
Case "nuts" To "soup"
请问:按英文字母顺序落入从 nuts 到 soup 之间的字符串,这些字符串是怎么个顺序
排的呢?是这样吗: 从第一个字母:n-》s,然后就是第二个字母:u-》o。。。

...全文
103 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
bcrun 2003-09-07
  • 打赏
  • 举报
回复
to northwolves(野性的呼唤) and Gelim(Gelim) :
两位老兄用不着争了,显然楼主这个理解起来模棱两可的句子(是这样吗: 从第一个字母:n-》s,然后就是第二个字母:u-》o。。。
)被两位理解成不同的意思了,不过我看你们的代码,你们对这个字符串大小比较的算法的理解应该是一回事:)
  我觉得可以这样用文字描述:设两个长度不一定相等的字符串s1和s2从左边开始字符一一对应,然后从左至右逐个从两个字符串从取一个字符来进行大小比较,如果相等,则向右移至下一组,如果依此顺序,有某一组字符不相等或一个字符串较短已无字符可取时,则相应字符较小或较短的字符串比另一个字符串小!如果出现两个字符串同时无字符可取的情况,则判断两字符串相等!
  哈,说得反而很罗嗦了,哪位老兄帮助精简一下就好了:)
pigpag 2003-09-07
  • 打赏
  • 举报
回复
插值检查:判断A是否介于BC之间:(A-B)(A-C)<0
figoren 2003-09-06
  • 打赏
  • 举报
回复
就是逐个字符比较 遇到第一个不相同字符时 就可以判断是否在2个字符之间
hxy1982 2003-09-06
  • 打赏
  • 举报
回复
呵呵~!
Gelim 2003-09-04
  • 打赏
  • 举报
回复
to northwolves(野性的呼唤):

没错啊!你的程序也证明了楼主的话是对的啊!

你的程序在执行时第一个显示true,第二个是false

因为第一个送进去字符串的第一个字母是"q",他大于"n",小于"s",所以显示TRUE

而第二个正好相反,所以显示FALSE

比较的时候,他不会管你有多少个字符的!
northwolves 2003-09-04
  • 打赏
  • 举报
回复
兄弟试试下面代码:

Private Sub Command1_Click()
MsgBox betweenthem("qhdfhdsfhsdfdsghdgg")
MsgBox betweenthem("vssffhdghhgf")
End Sub
Function betweenthem(ByVal temp As String) As Boolean
Select Case temp
Case "nuts" To "soup"
betweenthem = True
Case Else
betweenthem = False
End Select
End Function
Gelim 2003-09-03
  • 打赏
  • 举报
回复
83848次
Gelim 2003-09-03
  • 打赏
  • 举报
回复
Private Sub Command1_Click()
Dim a() As String
Dim i As Long
Dim b As String

ReDim a(0) As String
a(0) = "nuts"
Do Until a(i) = "soup"
DoEvents
b = a(i)
i = i + 1
ReDim Preserve a(i) As String

Mid$(b, 4, 1) = Chr(Asc(Mid$(b, 4, 1)) + 1)

If Mid$(b, 4, 1) > "z" Then
Mid$(b, 4, 1) = "a"
Mid$(b, 3, 1) = Chr(Asc(Mid$(b, 3, 1)) + 1)
If Mid$(b, 3, 1) > "z" Then
Mid$(b, 3, 1) = "a"
Mid$(b, 2, 1) = Chr(Asc(Mid$(b, 2, 1)) + 1)
If Mid$(b, 2, 1) > "z" Then
Mid$(b, 2, 1) = "a"
Mid$(b, 1, 1) = Chr(Asc(Mid$(b, 1, 1)) + 1)
End If
End If
End If
a(i) = b
Loop

For i = 0 To UBound(a)
DoEvents
Select Case a(i)
Case "nuts" To "soup"
Text1 = CStr(CLng(Text1) + 1)
End Select
Next i

End Sub

很多次啊!
Gelim 2003-09-03
  • 打赏
  • 举报
回复
楼上的错了!我实践证明楼主说得没错!请看程序!
northwolves 2003-09-03
  • 打赏
  • 举报
回复
否,Case "nuts" To "soup"为在字典中可以排列在该两词之间的所有字母组合,如:“oad”,“sip”等
danielinbiti 2003-09-03
  • 打赏
  • 举报
回复
对,逐位比较

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧