程序功能:在文本框Text1中输入课程号,单击“查询”按钮Command1,在列表框List1中显示选修本课程的学生信息。如果没有找到,在列表框中显示“该课程当前无人报名”。按此要求将程序补充完整。
Private Sub command1_click()
Dim xh(1 to 40),xm(1 to 40) As String '学号和姓名的数组
Dim i,num as integer
Dim conn As New ADODB.Connection, rs As New ADODB.Recordset
Dim strSQL As String
conn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + App.Path + "\student.accdb" '打开到数据库的链接
conn.Open
strSQL ="select xh,xm from data where '课程=&(Text1.Text) & '" '设置查询的SQL语句
Set rs.ActiveConnection = conn '设置rs的ActiveConnection属性,指定与其关联的数据库链接
rs.Open strSQL '打开记录集,将从表student中读取的结果集保存到记录集rs中
List1.Clear
num=0
Do while not rs.EOF
①
xh(num)=rs.Fields("xh")
xm(num)=rs.Fields("xm")
rs.MoveNext
loop
rs.Close
conn.close
set rs=nothing
set conn=nothing
For i=1 to num
②
Next i
if num=0 then list1.additem("该课程当前无人报名")
End Sub
n = 0 : m = 0
For i = 1 To 100
If Rnd > 0.5 Then
n = n + 1
Else
m = m + 1
Next i
……
小金仔细分析该程序段后,发现其中缺少了( )
k = Val(Text1.Text)
left1 = 1: right1 = 10
Do While (left1 <= right1)
mid1 = (left1 + right1) \ 2
If a(mid1) <=k Then
left1 = mid1 + 1
Else
right1 = mid1-1
End If
Loop
Text2.text=str(right1)
已知数组a(1)到a(10)的原始数据为1,4,5,5,5,5,8,9,9,10.程序运行时,在文本框text1中输入5,文本框text2显示的内容是( )
新股首个交易日的涨停上限为44%,其余的交易日涨停上限为10%,并将相应股票价格四舍五入到分。公式提示:日收益=(本交易日股价-前一交易日股价)×股数
程序运行界面如图所示:
Private Sub Command1_Click()
Dim gj As Double,x As Double ‘用于存放股价
Dim n As Integer·gs As Integer ‘n用于存放涨停个数, gs用于存放股数
Dim zsy As Long,rsy As Long ‘zsy用于存放总收益。 rsy用于存放日收益
List1.Clear
gi=Val(Text1.Text):n=Val(Text2.Text):gs=Val(Text3.Text)
zsy=0
List1.Addltem“交易日 股价 日收益”
For i=1 To n
x=gj
IfThen ‘①
gj=Int(gj*1.44*100+0.5)/100
Else
gj=Int(gj*1.1*100+0.5)/100
End If
rsy= ‘②
zsy=zsy+rsy
List1.Addltem“第”Str(i)&“ ”&Str(gj)&“ ”&Str(rsy)
Next i
Label4.Caption=Str(gs)&”股预期总收益”&Str(zsy)&“元”
End Sub
Private Sub Command1_Click()
Dim a(65 To 122) As Integer
Dim i As Integer, ch As String, count As Integer
Dim Max As Integer, Maxi As Integer, flag As Boolean
List1.Clear
flag = False
count = 0
s = Text1.Text
For i = 1 To Len(s)
ch = Mid(s, i, 1)
If ch>= "a" And ch<= "z" Or ch>= "A" And ch<= "Z" Then
a(Asc(ch)) =
If flag = False Then
count = count + 1
flag = True
End If
Else
End If
Next i
Max = 0: Maxi = 0
For i = 65 To 122 ’A的ASCII码值为65,a的ASCII码值为97
If a(i) > 0 Then
List1.AddItem Chr(i) + ": " + Str(a(i))
End If
If a(i) > Max Then
Max = a(i)
Maxi = i
End If
Next i
Label1.Caption = "频率最高字母:" +
Label2.Caption = "共有单词数:" + Str(count) + "个"
End Sub
请在划线处填入合适的代码
Private Sub Command1_Click()
Dim s As String, k As Integer
k = Val(Text2.Text)
Label3.Caption=“对应的十进制数:”+Str(toD(s, k))
End Sub
Function toD(s As String, k As Integer) As Integer
Dim ans As Integer, x As Integer
ans = 0
For i = 1 To Len(s)
If Mid(s, i, 1) >= "A" And Mid(s, i, 1) <= "F" Then
x = Asc(Mid(s, i, 1))- Asc(“A”)十 10
Else
x = Val(Mid(s, i, 1))
End If
Next i
End Function
s = Text1.Text
List1.Clear
len1 = Len(s) ‘①
For i = 1 To len1 ‘②
For j = 1 To len1- i ‘③
List1.AddItem Mid(s, j, i) ‘④
Next j
Next i
运行时发现未输出所有子串,则修改( )
Private sub Command1_click()
Dim s1 As String, s2 As String, t As String, ch As String
Dim i As Integer
s1 = Text1.Text
i = Len(s1)
t = "": s2 = ""
Do While i > 0
ch = Mid(s1, i, 1)
If ch >= "0" And ch <= "9" Then
t = ch + t
Else
s2 = s2 + t +, ①
t = ""
End If
i = i + 1 ②
Loop
s2 = s2 + t
Text2.Text = s2
End sub
① ②
Private Sub Command1_Click()
a = Text1
For i = 1 To Len(a)
b = Mid(a, i, 1)
c = Chr(Asc(b) )
d = d + c
Next i
Text2 = d
End Sub
如果在文本框text1中输入字符"316100",则文本框text2中显示的值是:( )
Private Sub Command1_Click()
Dim a As Single, b As Single, ch As String
a = Val(Text1.Text)
b = Val(Text2.Text)
If ch = "+" Then
Text4.Text = Str(a + b)
ElseIf ch = "*" Then
Text4.Text = Str(a * b)
ElseIf ch = "-" Then
Text4.Text = Str(a - b)
ElseIf ch = "/" Then
If Then Text4.Text = Str(a / b) Else Text4.Text = "除数不能是零"
Else
End If
End Sub
Private Sub Command1_Click()
Const st = "0123456789ABCDEF"
Dim s, ch, rs As String
Dim m, r1, r2, n As Integer
For i = 1 To Len(s)
ch = Mid(s,i,1)
If ch > "9" Or ch < "0" Then
r2 = m Mod 16
rs = rs + Mid(st, r1 + 1, 1) + Mid(st, r2 + 1, 1)
m = 0
Else
m = m * 10 + Val(ch)
End If
Next i
Text2.Text = "#" + rs
End Sub
Private Sub Command1_Click()
Dim a(5) as Integer
Dim n as Integer, i as Integer
n = Val(Text1.Text)
i = 0
a(1) = 1
a(2) = 1
For i = 3 To n
a(i) = a(i-1) + a(i-2)
Next i
Label1.Caption = a(i)
End Sub
若在Text1中输入5,则点击按钮后的运行结果为( )
Private Sub Command1_Click()
Dim i As Integer
Dim a(10)As Integer ‘①
For i=1 To 10 ‘②
a(i)=Rnd* 100 ‘③
Next i
Label1.Caption=Str(a(i)) ‘④
End Sub
Dim b(1 To 10)As Long
Dim i As Integer
b(1)=1
For i=1 To 10
b(i+1)=b(i)+1
Next i
Text1. Text=Str(b(i))
运行该程序段,会出现的错误提示为( )。
For i=1 To 1000
a=Int(Rnd * 100 + 1)
b=Int(Rnd* 100 + 1)
x=a+b
y=a-b
c=Sqr(x)
d=Sqr(y)
Next i
调试时出现如图所示的错误提示,产生此错误的语句是( )
s=s//6
print(s)
程序运行后,键盘输入31,其输出结果为
s=0
for i in range(1,8,3):
s=s+i
print(s)
f=[‘A’,‘B’,‘C’]
a=len(f)
print(‘a=’,a)
此时程序正在执行的语句是( )
Private Sub Command1_ Click( )
Dim a As Integer
Dim s As String
s ="year:
a = 2016
s=s+a
Text1.Text = Str(a)
End Sub