flag = False: n = 0
s = " Good Luck To You!"
For i = 1 To Len(s)
ch = Mid(s, i, 1)
If ch >= "a" And ch <= "z" And flag Then
n = n + 1: flag = False
Else
flag = True
End If
Next i
执行该程序段后,变量 n 的值为( )
Key = Val(Text1.Text)
i = 1: j = 10: c = 0
Do While i <= j
m = (i + j) \ 2
c = c + 1
If a(m) >= Key Then j = m – 1 Else i = m + 1
Loop
Text2.Text = Str(c) + Str(i) + Str(j) + Str(m)
数组元素a(1)至a(10)的值依次为“8,10,12,15,15,15,21,34,45,66”。在文本框Text1中输入数值15,执行该程序段后,文本框Text2中显示的内容是( )
实现上述功能的VB代码如下。
Dim a(1 To 50) As Integer
Private Sub Command1_Click()
Dim i As Integer
k = 0:i = 3
Do While i <= 100
If Not prime(i) Then
k = k + 1
End If
i = i + 2
Loop
For i = 2 To k
If ① Then
List1.AddItem Str(a(i-1)) +“和” + Str(a(i))
End If
Next i
End Sub
Function prime(x As Integer) As Boolean
prime = False
For i = 2 To Int(Sqr(x))
If x Mod i = 0 Then
prime = True
Exit For
End If
Next i
End Function
有如下VB程序段:
For i = 1 To n
For j = n * (i - 1) + 1 To ①
For k = ② To ③
If a(k) > a(k + 1) Then
t =a(k): a(k) = a(k + 1): a(k + 1) = t
End If
Next k
Next j
Next i
上述程序段划线处的表达式正确的是( )
x=int(input("请输入一个正整数:"))
if x%2==0:
print(x,"是偶数.")
else:
print(x,"是奇数.")
For i = 1 To 6
a(i) = Int(Rnd * 20) + 1: b(i) = i
Next i
For i = 1 To 5
For j = i+1 To 6
If a(b(i))>a(b(j)) Then
t = b(j): b(j) = b(i): b(i) = t
End If
Next j
Next i
i = 1 : j = 6: s="" : Key = Val(Text1.Text)
Do While i <= j
m = (i + j) \ 2
If Key = a(b(m)) Then Exit Do
If Key < a(b(m)) Then j = m - 1 Else i = m + 1
s = s + Str(m)
Loop
Text2.Text = s
在文本框Text1中输入10,运行以上程序段后,文本框Text2中显示的内容为 3 5 4,则 a 数组中 a(1)到 a(6)各元素的值可能的是( )
n=Len(Text1.Text):c=1
For i=1 To n
s=Mid(Text1.Text,i,1)
If s>="0"And s<="1"Then
a(c)=a(c)*2+Val(s)
Else
If a(c)>0 Then c=c+1
End If
Next i
在文本框Text1中输入“A:1010 C:1100 E:1110”。执行该程序后,数组a(2)中的元素值为( )
实现上述功能的VB程序如下,但加框处代码有误,请改正。
Private Sub Command1_Click( )
Dim s As String,result As String,pos As String
Dim count As Integer,i As Integer
i=1:count=0
result="":pos=""
Do While i<=Len(Text1.Text)
s=Mid(Text1.Text,i,Len(Text2.Text))
If s=Text2.Text Then
result=result+Text3.Text
count=count+1
pos= ‘①
i=i+Len(Text2.Text)
Else
‘②
i=i+1
End If
Loop
Text4.Text=result
Text5.Text=Str(count)
Text6.Text=pos
End Sub
以上程序段运行时,为了实现上述功能,加框处代码应改正为:①;②。
Private Sub Command1_Click()
Dim i As Integer
Dim x As Integer
Dim s As String
Randomize
i = 1: s = "1"
Do While i <= 6
x = Int(Rnd * 9) + 1
If x Mod 2 = i Mod 2 Then
s = s + Str(x)
i = i + 1
End If
Loop
Label1.Caption = s
End Sub
运行程序后,标签Label1中可能出现的是( )
Private Sub Command1_Click()
Dim msg As String c As String, tmp As String, s As String, flag As Boolean msg = Text1.Text msg = msg + "/" '标记字符串结束符
tmp = "" :s = "" : flag = True
For i = 1 To Len(msg)
c = Mid(msg, i, 1)
If Then
flag = False
tmp = tmp + c
ElseIf flag = False Then s = s + tmp + ","
tmp = ""
End If
Next i
Text2.Text = s
End Sub
s=Text1.Text
n=Len(s) 's是待判断的字符串
k=0: j=n
For i=1 to n\2
c1=Mid(s, i, 1)
c2=Mid(s, j, 1)
If c1 <> c2 Then k = k+1: Exit For
j=
Next i
If Then Label1.Caption="对称" Else Label1.Caption="不对称"
s = Text1. text
i=1: max1=1: maxi=i
j=2
Do While j <= Len(s)
If Then
If j-i> max1 Then max1 =j-i: maxi = i
End If
Loop
If j- i> max1 Then max1=j-i: maxi= i
If max1>1 Then Text2. Text = Mid(s, maxi, max1)
上述程序段中方框处可选语句为( )
①j=j+1
②i = j
③Mid(s, j, 1)>= Mid(s, j - 1, 1)
④Mid(s, j, 1) <= Mid(s, j - 1, 1)
则(1)、(2)、(3)处语句依次为
i=1:j=10:k=1:key=Val(Text1.Text)
Do While I < =j
m=(i+j+1)\2
If key = a(m) Then
Exit Do
Else If key < a(m) Then
i=m+1:k=k*2
Else
j=m-1:k=k/2
End If
Loop
Text2.Text = Str(k)
数组元素a(1)到a(10)的值依次为“120,97,88,66,50,46,24,20,18,6”,在文本框Text1输入下列选项值,所得的输出结果与其他三项不同的是( )
小李编写了如下程序求解10个人的出列顺序。程序运行界面如图15-1所示,点击求解按钮后,在Text1中输出出列顺序,在Text2中显示随机数据的值。
Private Sub Command1 _Click( )
Dim ld(1 To 10) As Boolean, i As Integer, j As Integer
Dim rs As Integer, C As Integer, m As Integer
Randomize
For i=1 To 10
ld(i) = True ‘数组元素为True表示第i人当前在队列中
Next i
c=0:rs=10
m =Int(Rnd*3)*2+3
Do While rs <> 0
If ld(i) = True Then
If c=m Then
ld(i) = False
Text1.Text = Text1.Text + Str(i)
c=0
End If
End If
i =i-1
If Then i=10
Loop
End Sub
表 15.1 Base64 编码表
索引 |
0 |
1 |
… |
24 |
25 |
26 |
27 |
… |
50 |
51 |
52 |
… |
61 |
62 |
63 |
字符 |
A |
B |
… |
Y |
Z |
a |
b |
… |
y |
Z |
0 |
… |
9 |
+ |
- |
以编码字符“Web”为例,如表15.2所示,字符“Web”对应的ASCII编码分别是87,101,98,分别转换为8位二进制数,按6位二进制数分组后再转换成十进制,查找它们对应的字符,得到“Web”得Base64编码为“V2Vi”。
表15.2 Base编码方法
s1=input('请输入编码字符:')
s=''
tmp=0
ans=''
txt='ABCDEFGHIJKLMNOPQRSTUVWSXYabcdefghijklmnopqrstuvwxyz012345678+/'
for c in s1:
n=
t=''
for i in range(8): # 将十进制 n 转换为 8 位二进制
r=n%2
t=+t
n=n//2
s=s+t
for i in range(len(s)): # 6 位二进制一组分组再转换成十进制,查找它们对应的字符
if i%6==5:
ans=ans+txt[tmp]
tmp=0
print('Base64 编码:',ans)
dx={"0":"零","1":"壹","2":"贰","3":"叁","4":"肆","5":"伍","6":"陆","7":"柒","8":"捌","9":"玖"}
dw="亿仟佰拾萬仟佰拾元"
money=input("请输入金额(整数,不得超过9位):")
zh=""
t=""
if ① :
print("输入的数据超出所能转换的范围。")
else:
for i in range(0,len(money)):
t= ② #取出第i位小写对应的大写
dwz=len(dw)-len(money)+i # 计算该小写数字对应的单位在dw中的索引号
③
print(money,"的大写为:",zh, "整")
① ② ③
图 a |
图 b |
实现上述功能的 VB 程序如下,请回答下列问题:
Private Sub Command1_Click()
Const n = 6
Dim a(1 To n * n) As Integer
Dim b(1 To n * n) As String
Dim i As Integer, j As Integer, k As Integer, s As String
Dim zf As Integer '变量zf存储数组a元素的值
Dim xb As Integer '变量xb存储数组a的下标
Dim p As Integer
For i = 1 To Len(Text1.Text)
b(i) = Mid(Text1.Text, i, 1)
Next i
k = 1
For i = 1 To n
k = k + (i - 1)
zf = k
a(xb) = zf
p = i + 1
For j = 2 To n
If j <= n - i + 1 Then
zf = zf + p
a(xb + j - 1) = zf
p = p + 1
Else
zf = zf + p
a(xb + j - 1) = zf
End If
Next j
Next i
For i = 1 To n
s = s +
Next i
Text2.Text = s
End Sub
实现上述功能的程序如下,请在划线处填入合适的代码。
c=input("请输入需要加密的字符(大写或小写字母):")
if "a"<=c<="z":
x=
if x>122:
else:
x=ord(c)-1
if :
x=90
print(c+"的加密字符为:",chr(x))
Const n= 100
Dim a(1 To n) As Integer
Dim b(1 To n) As Integer
Private Sub Command1_Click( )
'根据方阵规模,分割元素组成方阵,并在列表框List1中显示,代码略
End Sub
Private Sub Command2_Click( )
Dim i As Integer, j As Integer, m As Integer, k As Integer
Dim s As String
m= Val(Text1. Text)
List2. Clear
k= Int(Rnd * 2)
If k=0 Then
For i=1 To m
For j=1 To m
b((i- 1) * m+j)=
Next j
Next i
Else
For i=1 To m
For j=1 To m
b((i-1) * m+j)=a((j-1) * m+m-i+1)
Next j
Next i
End If
s=" "
For i=1 To m * m
If Then
List2. AddItem s
s=""
End If
Next i
End Sub