Key = Val(Text1.Text) \10 Text2.Text = ""
i = 1: j = 9: f = False
Do While i <= j And Not f m = (i + j)\ 2
If a(m) Mod 10 = Key Then search = m: f = True
ElseIf a(m) Mod 10 > Key Then i = m + 1
Else
j = m - 1 End If
Text2.Text = Text2.Text + Str(m) Loop
执行完该程序段后,Text2中显示的内容是( )
Private Sub Command1_Click()
Dim a(1 To 5) As Integer
a(5)=Val(Text1.text)
For i=4 To 1 Step -1
a(i)=a(i+1)\2
Next i
Label1.caption=str(a(1))
End sub
在文本框Text1中输入“100”,单击命令按钮Command1后,标签Label1中显示的内容是( )
转换前元素次序为:
12 2 5 3 6 9 4 10 8 5 6 9 6 3 5 8 11 2 8 9 |
转换为矩阵如下:
现要在矩阵中寻找一个规模为3*3的子方阵,使得该子方阵的各元素之和最大。
Private Sub Command1_Click ( )
Dim a (1 To 100) As Integer
Dim sum (0 To 101) As Long ‘ sum(i) = a(1)+a(2)+a(3)+…+a(i)
Dim i As Integer, j As Integer, n As Integer
Dim m As Integer, k As Integer
Dim ans As logn, begin As Integer
Dim maxi As Integer, maxsum As Long, s As String
n= Val(Text. Text)
m= Val(text2. Text)
‘ 随机生成n个整数存储在a数组中,并以(n\m)行m列矩阵形式显示在列表框List1中
‘ 代码略
k=3
sum(1) = a(1)
For i = 2 To n ‘ 求sum(i)
①
Next i
maxsum =0
ans = 0
For i =1 To n\m -k+1
For j = k To m
begin = (1-1)*m = j-k+1
maxsum= maxsum + sum (j+(i-1)* m)-sum(j-k+(1-1)*m)
②
maxsum = maxsum + sum(j+(i+1)* m)-sum(j-k+(i +1)* m)
If maxsum > ans Then ans = maxsum
maxi begin
maxsum =0
Next j
Next i
s = “”
For i = 1 To k
For j =1 To k
s = ③
List2 AddItem s
s = “”
Next j
Next i
List2 AddItem "maxsum ="+ Str(ans)
End sub
① ② ③
密码强度判断条件如下:密码长度小于6,则强度为“弱”。在密码长度大于等于6的情况下,若只出现一种字符,则密码强度为“弱”;若出现两种不同字符,则密码强度为“中”,出现3种以上不同字符,则密码强度为“强”。
Private Sub Cmd1_Click()
Dim n As Integer,i As Integer,m As Integer,s As String,c
As String
①
If n<6 Then
Label3.Caption ="弱"
Else
s= "0000"
For i = 1 To n
c=Mid(Text1.Text,i,1)
If c > = "0"And c<= "9" Then
Mid(s,4,1)= "1"'将字符串s第4位上的字符替换为"1"
Elself c > ="A" And c<="Z" Then
Mid(s,3,1)= "1"
Elself c>="a" And c<="z" Then
②
Else
Mid(s,1,1)= "1"
End If
Next i
m = 0
For i = 1 To 4
If Mid(s,i,1)= "1" Then ③
Next i
If m< 2 Then
Label3.Caption="弱"
Elself m = 2 Then
Label3.Caption="中"
Else
Label3.Caption="强"
End If
End If
End Sub
①②③
对于一个轮转后有序数组arr可以进行二分查找,算法思路如下(以升序为例):
每次根据查找的左侧位置L和右侧位置R求出中间位置M后,M左边,M和右边[M+1,R],这两部分中至少一个是有序的(可根据中间位置数据和边界数据的大小关系判断)。
arr[M]和待查找数据Key比较
①arr[M]=key,返回M的值
②若M位置的右侧有序,当待查找数据在右侧,则下次在右侧查找,否则在M左侧查找
③若M位置的左侧有序,当待查找数据在左侧,则下次在左侧查找,否则在M右侧查找
Function Search (key As Integer, L As Integer, R As Integer) As Integer
①
Do While L<=R And Search=-1
M=(L+R)\2
If arr(M)=key Then
Search=M
Else
If ② Then
If arr(L)<=key And key<arr(M) Then
R=M-1
Else
L=M+1
End If
Else
If ③ Then
L=M+1
Else
R=M-1
End If
End If
End If
Loop
① ② ③
Dim xm (1 To n) As String,xh(1 To n) As String
Dim cj(1 to n)As Integer
Private Sub form_load()
“读取相关数据表,把姓名、学号、成绩分别存储到数组xm、xh、cj中,并在List1中显示,代码略
End Sub
Private Sub Com1__Click() ‘小王编写的代码部分
Dim wz (1 To n) As Integer
For i = 1 To n-1
wz(i) = i
For j = n To i+1 Step-1
IfThen
t = cj(j):cj(j) = cj(j-1):cj(j-1) = t
t = xh(j):xh(j) = xh(j-1):xh(j-1) = t
End If
Next j
Next i
For i = 1 To n-1
For j = n To i+1 Step-1
IfThen
t = cj(j):cj(j) = cj(j-1):cj(j-1) = t
t = xh(j):xh(j) = xh(j-1):xh(j-1) = t
t = wz(j):wz(j) = wz(j-1):wz(j-1) = t
End If
Next j
Next i
List2.Clear
List2.AddItem“学号姓名成绩座位号”
For i = 1 To n
List2.AddItemxh(i)+“”+xm(i)+“”+Str(cj(i))+“”+Str(wz(i))
Next i
End Sub
Private Sub Com2_Click() ‘小李编写的代码部分
Dim wz(1 To n) As Integer,t(1 To n) As Integer
For i = 1 To n
t(i)=i
Next i
For i = 1 To n
For j = n To i+1 Step-1
IfThen
temp=t(j):t(j)=t(j-1):t(j-1)=temp
End If
Next j
Next i
List2.Clear
List2.AddItem“学号 姓名 成绩 座位号”
For i = 1 To n
List2.AddItemxh(i)+“”+xm(i)+“”+Str(cj(i))+“”+Str(wz(i))
Next i
End Sub
Dim a(1 To 9)As Integer
Text 1.Text=""
For i=1 To 9
a(x(i))=a(x(i))+1
Next i
For i=1 To 9
For j=1 To a(i)
Text1.Text=Str(i)+Text1.Text
Next j
Next i
若数组x(1)到x(9)的值依次为“8,9,7,3,2,7,1,4,2”,则执行该程序段后,在文本框Text1中显示的是( )
t =True
For i =3 To 10
d=a(i- 1)- a(i- 2)
If a(i)-a(i-1)<>2*dThen
t = False
End If
Next i
执行程序后,t的值是True,则a(10)的值为( )
Private Sub Command1_Click( )
X=Val(Text1.Text)
Select Case X
Case
Print “出错”
Case Is<0
Y=100-X
Case 0 To 100
Y=100+X
Case
Y=400
End Select
Text2.Text=X
End Sub
a=int(input())
b=int(input())
if a%3==0:
if b%2==0:
c=a**b
else:
c=a*b
else:
c=a-b
print(c)
图 a 图 b |
from random import randint import csv
k = int(input("请输入抽取人数: print("抽取人员名单为: ")
f = open("mingdan.csv")
f_csv = csv.reader(f)
dic = {}
num = 0
for row in f_csv:
if num == 0:"))
print(row[0]," ",row[1])
num += 1
continue
dic[num] = [row[0],row[1]]
num += 1
f.close()
num -= 1
i = 0
while i < k:
luck = ①
print(dic[luck][0], ③ )
i += 1
if num == i + 1:
Break
① ② ③
①not(x<=3 and x>6) ②not(x<=3 or x>6) ③x>3 and x<=6 ④x>3 or x<=6