Dim a(1 to 20) As Integer
For i=2 to 10
For j=2 to 20\i
a(i*j)=a(i*j) +1
Next j
Next i
该程序段运行后,数组a中元素值为0的个数是( )
编写一个验证哥德巴赫猜想的VB程序:程序运行时,在文本框Text1中输入一个大于或等于4的偶数,单击“验证”按钮Command1后,如果哥德巴赫猜想验证成功,则在文本框Text2中显示“Yes”,并在列表框List1中显示用两个素数表示该偶数的等式,否则显示“No”。程序运行效果如图所示。
实现上述功能的VB代码如下,但加框处代码有错,请改正。
Function judge(x As Integer)As Boolean
‘函数judge的功能是判断整数x是不是素数,若是素数则返回True,否则返回False
Dim j As Integer
judge=True
j=2
Do While j<=x-1 And judge=True
If x Mod j=0 Then
judge=False
Else
j=j+1
End If
Loop
End Function
Private Sub Command1_Click()
Dim n As Integer, p As Integer, q As Integer, flag As Boolean
n=Val(Text1.Text)
p=1
flag=False
Do While And p<n ‘
p=p+1
‘
If judge(p)And judge(q)Then
Text2.Text=“Yes”
flag=True
List1.AddItem Str(n)+“=”+Str(p)+“+”+Str(q)
End If
Loop
If flag=False Then
Text2.Text=“No”
End Sub
1 | 5 | 7 | 9 |
4 | 6 | 10 | 15 |
8 | 11 | 12 | 19 |
14 | 16 | 18 | 21 |
已知数据逐行存储在数组a中,在杨氏矩阵数组中查找某数字是否存在的VB程序段如下:
cz = False : i = 1 : j = n
Do While j >= 1 And i <= n
If key < a(s) Then
⑵
ElseIf key > a(s) Then
⑶
Else
cz = True:Exit Do
End If
Loop
方框中的代码由以下三部分组成:
①j = j - 1
②s = (i - 1) * n + j
③i = i + 1
代码顺序正确的选项是( )
Private Sub Command1_Click()
Dim a(1 To 20)As String
Dim n,m,i,j As Integer
Dims,s1,s2 As String
s1=Text1. Text:n=Len(s1)
m=0:s=""
For i=1 To n
If Mid(s1,i,1)="" Or Mid(s1,i,1)="." Then
m=m+1
a(m)=s
s=""
Else
End If
Next i
For j=1 To m
n=Len(a(j))
For k=1 To n
If t﹥="a" And t<="z" Then
s2=s2+t
Else
s2=s2+t
End If
Next k
Text2. Text=Text2. Text+s2
s2=" "
Next j
Text2. Text=Text2. Text & "."
End Sub
1)用数组b存储最小下降数列中最小的元素(查找过程中的最小值)b(1)开始为数组a第1个元素;
2)加入方法:将a(i)与数组b中的每个元素依次逐个比较:若a(i)比b(j)小就用a(i)替换b(j)中的值;将a(i)添加到第j个下降数列中,并存储在c数组的c(j)中;
3)若数组a各元素的值为:34,54,3,76,2,3时,则3个下降数列分别为:
“34,3,2”,“54,3”,“76”。
程序运行界面如下图所示:
依据上述描述设计了如下VB程序。请回答下列问题:
Const n = 20
Dim a(1 To n) As Integer
Private Sub Form_Load()
'读取n个数据,依次存储到a(1)、a(2)、……a(n)中,代码略
End Sub
Private Sub Command1_Click()
Dim b(1 To n) As Integer '存储数列最小的值
Dim c(1 To n) As String '存储下降数列
Dim i As Integer
Dim j As Integer
Dim bn As Integer '存储下降数列个数
b(1) = a(1)
bn = 1
c(1) = Str(a(1))
For i =
For j = 1 To bn
If a(i) < b(j) Then
b(j) = a(i)
Exit For
End If
Next j
If j > bn Then
bn = bn + 1
c(bn) = Str(a(i))
End If
Next i
For i = 1 To bn
List1.AddItem c(i)
Next i
Text2.Text = "数列中共有" + Str(bn) + "个下降序列"
End Sub
Dim a(1 To 6) As String i = 6
Text1.Text = ""
Do While i > 1
k = i
For j = 1 To i - 1
If a(k) < a(j) Then k = j
Next j
tmp = a(k): a(k) = a(i): a(i) = tmp
Text1.Text = a(i)
i = i - 1
Loop
其中数据元素 a(1)到a(6)的值依次为“12”、“34”、“8”、“9”、“77”、“23”,执行该程序段后,文本框Text1中显示的内容为( )
s = 0 : i = 100 ‘①
Do While i >= 0 ‘②
i = i + 2 ‘③
s = s + i ‘④
Loop
Text1.text=str(s)
执行这部分流程,发现其违背了算法的“有穷性”特征,下列修改方案正确的是( )
Private Sub Command1_Click()
Dim n As Integer, i As Integer, j As Integer
Dim a(1 To 100) As Integer, b(1 To 100) As Integer Dim s As String, chr As String, temp As String
s = Text1.Text
i = 1: n = 0
Do While i <= Len(s)
ch = Mid(s, i, 1)
If ch >= "0" And ch <= "9" Then
temp = temp + ch
Else
n = n + 1
①
temp = ""
End If
i = i + 1
Loop
For i = 2 To n
②
Next i
For i = 1 To n - 2
For j =
If b(j) < b(j - 1) Then
t = b(j): b(j) = b(j - 1): b(j - 1) = t
End If
Next j
Next i
For i = 1 To n - 1
If b(i) <> i Then Exit For
Next i
If i = n Then Label1.Caption = "完美跳数" Else Label1.Caption = "非完美跳数"
End Sub
① ②
c =0: k = 1
For i = 2 To 10
If i Mod 2 <> 0 And a(k) < a(i) Then
k = i
c = c + 1
End If
Next i
数组元素a(1)到a(10)的值依次为“12, 33, 14, 6, 7, 23, 25, 37, 34, 40”,执行该程序段后,变量k和c的值分别为( )
实现此功能的VB程序段如下,已知程序中两处标记①的位置表达式相同,程序中①、②两处表达式为( )
Dim a(1 To 100) As Sting
For i= 1 To 10
For j=1 To 10
If i=j Or i Mod 10=0 Or i Mod 10= 1
Then
a( ① )="●"
Else
a( ① )="○"
EndIf
Next j
Next i
For i= 1 To 100
s=s+ a(i)
If ② Then
List1.Addltem s
End If
Next i
Dim a(1 To 6) As Integer, i As Integer
a(1) = Int(Rnd() * 5) + 95
For i=2 To 6
a(i)=a(i-1)-Int(Rnd()*5)
If i Mod2=0 Then a(i) = a(i) + a(i) Mod 2
Next i
程序运行后,a(1)-a(6)中可能的值是( )
x=1
while x>0:
x=x+1
print( x)
a=[ ]
for i in range(5):
a.append(i*i)
s=a[3]+a[4]
print (s)
程序描述:2公里(包括2公里)内,起步价为5元,超过2公里部分(不足整公里的,向上取整),每公里1.6元。
代码如下:
Import ① #引用math库
s= ② (input("请输入你要去目的地距离出发点的公里数:))
If ③ : #2公里(包括2公里)内
cost =5
else:
cost = 5+math.ceil(s-2) *1.6
print("你的打的费用是", cost,“元)
①处的语句是,②处的语句是,③处的语句是
①A.math B.Numpy C.time D.Matplotlib
②A.Float B.Int C.str D.Math
③A.s≤2 B.s<=2 C.s>2 D.s≥2
Private Sub Command1_Click()
Dim n As Integer,i As Integer, count As Integer
Randomize
Print"本次随机产生10到100且能被6整除的数是:";
For i = 1 To 50
n=
IfThen
Print n;
count =
End If
Next i
Print“共”;count; "个"
End Sub
算法思想:
首先生成一个比p大的全1数a,如果a能整除p,则算法结束,否则继续扩大a的位数,如此继续,直至a整除p。
程序运行界面如下图所示,在文本框Text1中输入整数p,单击“计算”按钮,在文本框Text2中输出整数s,在文本框Text3中输出乘积中1的个数。
小明依据上述描述设计如下VB程序。请回答下列问题:
Private Sub Command1_Click()
Dim p As Long, a As Long, b As Long, c As Long, n As Long
Dim s As String '存放整数s,因为该数较大,因此采用字符串存储
Do While True '判断输入的整数p是否为个位不是5的奇数
p = Val(Text1.Text)
If p Mod 2 < > 0 And p Mod 5 < > 0 Then Exit Do
Loop
a = 0
n = 0
Do While a < p
n = n + 1
Loop
c = a Mod p
s = Str(a \ p)
Do While c < > 0
a = c * 10 + 1
s = s & b
n = n + 1
Loop
Text2.Text = s
Text3.Text = Str(n)
End Sub
⑴请填空,完善该程序,实现功能:输入身高和体重,计算出体重指数BMI的值。体重计指数的计算方法:体重÷(身高*身高),说明:体重的单位为千克,身高的单位为米。
如果体重指数BMI范围是18.5-23.9,输出符合标准,否则不符合标准。
⑵编写完成后,原名保存并关闭应用软件。
注:程序修改时,请把下划线及序号删除;不能删除注释语句。
#请删除序号及下划线,填写正确的代码,使程序完善。
height=float(("请输入你的身高(米):"))
weight=float(("请输入你的体重(千克):"))
BMI=
if :
print("你的体重指数BMI为:",BMI,"符合标准!")
else:
print("你的体重指数BMI为:",BMI,"不符合标准!")
现利用“0”、“1”记录签到情况,其中“1”表示正常签到,“0”表示断签,输出获得的总积分数。例如,上图输入可以表示为“101111011”,输出结果为 14 分。
实现上述功能的程序如下,请回答下列问题:
s=input("输入签到情况:")
x=0
c=1
for i in range(len(s)):
if s[i]=="0":
elif :
x=x+c
c=c+1
else:
x=x+7
print(x)