Private Sub Command1_Click()
Dim a(1 To 100) As String ,s As String, ch As String, word As String
Dim i As Integer, j As Integer, k As Integer, numb As Integer
s = Text1.Text : k = 0 : word = ""
For i = 1 To Len(s)
ch = Mid(s, i, 1)
If ch >= "a" And ch <= "z" Or ch >= "A" And ch <= "Z" Then
If ch >= "A" And ch <= "Z" Then
word = word + ch
Else
flag = False
For j = 1 To k
If a(j) = word Then flag = True
Next j
If Not flag And word <> "" Then
a(k) = word
numb = numb + 1
End If
End If
Next i
Text2.Text = str(numb)
End Sub
Private Sub Command1_Click( )
Dim i As Integer, n As Integer, dec As Integer
s = Text1.Text
L=len(s) 'Len(s)得到字符串s的长度
For i = 1 To L
If Mid(s, i, 1) >= "A" Then
n = Asc(Mid(s, i, 1)) - Asc("A") + 10 'Asc ("A")返回的字符A的ASCII值65
Else
n = Val (Mid(s, i, 1))
End If
dec = dec + ①
Next i
②
End Sub
为实现上述功能,程序①处应填入代码为 ;程序②处应填入代码为 。
小刚编写VB程序实现如下功能:在文本框Text2中输入要查询的国家名称,在文本框Text3中输入n的值,单击“查询”按钮,读取Text1中的所有地区数据保存在数组a中并显示在列表框List1中;对数据进行统计分析,并在列表框List2中显示治愈率最高的n个地区,如有与第n个地区相等的治愈率地区,则同时输出。程序界面如图所示,请回答下列问题。
01000/00011/00101/00010/00100/00010/00100/00001/00101/00011/00101/00011/00101/00010/00100/00010/01001/00010/01001/00001/00111/00100/
密文信息由“0,1,/”组成,解密过程如下:
●将二进制密码信息(5位一组,以“/”分隔)转换成对应的十进制数。
●对数字按两个一组分组,发现末位数字不超过4,且数字4只会出现在7和9后面,与手机九宫格输入面板相似。如41表示按键4中第一个字母G,94表示按键9中的第四个字母Z,如图a所示:
●字母替换。如A用Q替换,F用Y替换,如下所示:
●将上述结果奇数位、偶数位的字符分别提取出来,最后连接在一起。如APPLE变成APEPL。
●逆序输出结果。
根据上述解密算法编写解密程序,程序在启动时读取密文并在Text1中显示,单击“解密”按钮,在文本框Text2中显示明文。程序运行效果如图b所示。
1)计算每个人的应还款(应还款=应分摊的总金额-先行垫付的总金额);
2)根据所有人的应还款数据计算转账明细(应还款为正的人转给应还款为负的人)。
根据上述要求编写VB程序,功能如下:运行程序,读取消费记录数据并在列表框List 1中显示。单击“结算”按钮Command 1,在列表框List 2中显示每个人的应还款,在列表框List 3中显示转账明细。程序运行界面如图所示。
Const n=9, m=15
Dim x(1 To n)As Integer ‘x(i)存储第i项消费记录的人均消费金额
Dim a(1 To n)As String ‘a(i)存储第i项消费记录的参与人
Private Sub Form_Load( )
‘读取所有消费记录,存入数组x和a中,并显示在列表框List 1中
‘代码略
End Sub
Private Sub Command1_Click( )
Dim i As Integer, j As Integer, k As Integer, p As Integer
Dim c As Integer, w As Integer, v As Integer
Dim b(1 To m)As Integer ‘保存应还款数据
For i= 1 To m
b(i)=0
Next i
For i=1 To n ‘根据消费记录计算应还款
k=Len(a(i))
p=Val(Mid(a(i), 1, 1))
b(p)=b(p)-(k–1)*x(i)
For j=2 To k
p=Val(Mid(a(i), j, 1))
Next j
Next i
c=0
For i=1 To m
List 2. AddItem Str(i)+“号”+Str(b(i))
If b(i)>0 Then c=c+1
Next i
i=1 : j=1 ‘根据应还款数据计算转账明细
Do While
Do While b(i)<=0
i=i+1
Loop
Do While b(j)>=0
j=j+1
Loop:
If w>0 Then Else v =b(i)
b(i)=b(i)-v:b(j)=b(j)+v
List 3. AddItem Str(i)+“号->”+Str(j)+“号 ”+Str(v)
If w<=0 Then c=c–1
Loop
End Sub
编写VB程序,实现上述功能。运行程序,在列表框List1中显示45位报名学生的报名序号和所选活动名称。单击“统计”按钮Command1,在列表框List2中显示需要调剂重报活动的学生报名序号。程序运行界面如图所示。
Const n=45
Dim a(1 To n) As String, xh(1 To n) As String
Dim c(1 To 3) As Integer
Private Sub Form_Load()
'在数据库中读取前45位学生的报名序号和所选活动项目名称,分别存入数组xh和数组a,在List1中显示。读取三项活动的限报人数,存入数组c,代码略
End Sub
Private Sub Command1_Click()
Dim b(1 To 3) As Integer, i As Integer, j As Integer, k As Integer
Dim t1 As String, t2 As String
For i=1 To n-1
For j=n To i+1 Step-1
If Then
If a(j)=″A″ Then
b(1)=j-1
Else
b(2)=
End If
t1=a(j): a(j)=a(j-1): a(j-1)=t1
t2=xh(j): xh(j)=xh(j-1): xh(j-1)=t2
End If
Next j
Next i
b(3)=n
i=1: k=1
Do While i <=n
If c(k)=0 And i <=b(k) Then
Do While i <=b(k)
a(i)=″″
i=i+1
Loop
k=k+1
ElseIf Then
k=k+1
Else
i=i+1
End If
Loop
For i=1 To n
If a(i)=″″ Then List2.AddItem xh(i)
Next i
End Sub
Private Sub Command1_Click()
Dim s1 As String, s2 As String, c As String, mw As String
Dim i As Integer
s1 = Text1. Text
s2 = Mid(s1, 1, 1)
For i=2 To
c = Mid(s1,i,1)
If c>= "A" And c <= "Z" Then
If Then s2=s2 + c
Else
s2 =s2+ c
End If
Next i
mw =""
i=6
Do While i<= Len(s2)
mw = mw+Mid(s2,i,1)
Loop
Text2. Text = s2
Label1. Caption = mw
End Sub