vb程序设计代码完善:编制程序从输入的字符串中删除重复出现的字母(小写字母需转换为大写字母)

然后在列表框中降序显示所有出现的字母OptionBase1OptionExplicitPrivateSubCommand1_Click()Dima(26)AsIntege... 然后在列表框中降序显示所有出现的字母
Option Base 1
Option Explicit
Private Sub Command1_Click()
Dim a(26) As Integer, i As Integer, s As String
Dim t As String, idx As Integer, s1 As String
s = UCase(Text1)
For i = 1 To Len(s)
t = Mid(s, i, 1)
If Then

If a(idx) <> 1 Then
s1 = s1 & t

End If
Else
s1 = s1 & t
End If
Next i
Text2 = s1
For i = 26 To 1 Step -1
If a(i) = 1 Then List1.AddItem Chr(Asc("a") + i - 1)
Next i
End Sub
展开
 我来答
听不清啊
高粉答主

推荐于2017-08-31 · 说的都是干货,快来关注
知道顶级答主
回答量:7.8万
采纳率:89%
帮助的人:1.9亿
展开全部
Option Base 1
Option Explicit
Private Sub Command1_Click()
  Dim a(26) As Integer, i As Integer, s As String
  Dim t As String, j As Integer
  s = UCase(Text1)
  i = 1
  While i < Len(s)
    t = Mid(s, i, 1)
    If t >= "A" And t <= "Z" Then
      a(Asc(t) - Asc("A") + 1) = 1
      j = i + 1
      While j <= Len(s)
        If Mid(s, j, 1) = t Then
          s = Left(s, j - 1) & Mid(s, j + 1)
        Else
          j = j + 1
        End If
      Wend
    End If
    i = i + 1
  Wend
  Text2 = s
  For i = 26 To 1 Step -1
    If a(i) = 1 Then List1.AddItem Chr(Asc("A") + i - 1)
  Next i
End Sub

l9010
2013-04-18 · 超过25用户采纳过TA的回答
知道答主
回答量:80
采纳率:0%
帮助的人:74.8万
展开全部
If        Then
idx = asc(t) - 64
If a(idx) <> 1 Then
s1 = s1 & t
a(idx) = 1
End If
Else
s1 = s1 & t
End If


想了半天没想出来上面的IF和后面的ELSE有什么用,删除重复应该也不是这么写啊...

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式