Dim flag As Boolean
s= Tex1.Text:j=0:cnt=1
For i=1 To Len(s)
c= Mid(s, i, 1)
If c>="0" And e<= "9" Then
j=j+1
flag= True
Else
If j>lenmax And cnt Mod 2= 1 Then lenmax=j
j=0
If flag Then cnt= cnt + 1:flag= False
End If
Next i
Text2. Text = Str(lenmax)
在文本框Text1输入“one302type27645time9986”,程序运行后文本框Text2中显示为( )
1)找出等式中单个数字的最大值;
2)从最大值加1的数制开始,按该数制的运算规则,把等式中所有数字转换成十进制数;
3)如果等式两边的结论是成立的,那么该数制就是符合上述等式的最小数制,否则从下一个数制重新计算,直到十六进制为止。
小明为此编写了一个VB程序,程序运行时,在文本框Text1中输入一个等式,单击“计算”按钮Command1,在文本框Text2中显示该等式中数字所属的数制。程序运行界面如下图所示。
Private Sub Command1_Click()
Dim s1 As String, ysf As String, t1 As String, t2 As String, t3 As String
Dim ch As String, t As String, max As Integer, jz As Integer, i As Integer
s1=Text1.Text
t1=0: max=0
For i=1 To Len(s1)
ch=Mid(s1, i, 1)
If ch=“+” Or ch=“-” Or ch=“*” Or ch=“\\” Then
ysf=ch: t1=t: t=“ ”
ElseIf ch=“=” Then
t2=t: t=“ ”
ElseIf ch >= “A” And ch <= “F” Then
t=t+ch
temp=
If max < temp Then max=temp
Else
t=t+ch
If max < Val(ch) Then max=Val(ch)
End If
Next i
t3=t: jz=0
Do While i <= 16
If ysf=“+” Then
If XtoD(i, t1)+XtoD(i, t2)=XtoD(i, t3) Then jz=i: Exit Do
ElseIf ysf=“-” Then
If XtoD(i, t1) - XtoD(i, t2)=XtoD(i, t3) Then jz=i: Exit Do
ElseIf ysf=“*” Then
If XtoD(i, t1) * XtoD(i, t2)=XtoD(i, t3) Then jz=i: Exit Do
Else
If XtoD(i, t1) / XtoD(i, t2)=XtoD(i, t3) Then jz=i: Exit Do
End If
i=i+1
Loop
If jz <> 0 Then
Text2.Text=“该数属于” +Str(jz)+ “进制”
Else
Text2.Text=“没有找到合适的进制”
End If
End Sub
Function XtoD(x As Integer, s As String) As Integer
Dim j As Integer
j=0
For i=Len(s) To 1 Step -1
XtoD=XtoD+Val(Mid(s, i, 1)) * x ^ j
Next i
End Function
import math
a=float(input("请输入方程系数a:"))
b=float(input("请输入方程系数b:"))
c=float(input("请输入方程系数c:"))
d=b*b-4*a*c
if :
x1=(-b+math.sqrt(d))/(2*a)
x2=(-b-math.sqrt(d))/(2*a)
print("方程有两个不同的解",x1,x2)
elif :
x1=-b/(2*a)
print("方程有两个相同的解",x1)
else:
print("方程无解")
x=int(input("请输入一个正整数:"))
if x%2==0:
print(x,"是偶数.")
else:
print(x,"是奇数.")
For i=1 to 3
For j=1 to 5-i
If a(j)>a(j+1) Then
t=a(j) : a(j)=a(j+1) : a(j+1)=t
End If
Next j
Text1.Text = Str(a(i))+Text1.Text
Next i
数组元素a(1)到a(5)的值依次为“2,9,7,8,5”。若该程序段执行后,文本框Text1显示的内容是( )
x=3
if x%2==0:
print(x,“是偶数。”)
else:
print(x,“是奇数。”)
|
数组元素 |
数组元素的含义 |
|
a(i) |
a(1)到a( 10)依次存储1号顾客购买商品1~商品10的记录: a(11)至a(20)依次存储2号顾客购买商品1~商品10的记录;依次类推。 数组a的某个元素的值为1,则表示某位顾客购买了某种商品,若为0则表示没有购买 该种商品。如a(6)=1表示1号顾客购买了商品6,a(6)=0表示未购买。 |
|
dsj(i) |
dsj(1)~dsj(9)依次存储商品1与商品2~商品10的关联次数; dsj(10)~dsj(17)依次存储商品2与商品3~商品10的关联次数;依次类推。 如dsj(5)=2表示商品1与商品6被同时购买过2次; 如dsj(45)=4表示商品9与商品10被同时购买过4次。. 数组dsj中,若dsj(45)的值最大,则表示商品9和商品10 的关联次数最多。 |
小王按照上述算法设计了VB程序,统计了20个用户购买10种商品之间的关联性,VB程序如下,部分界面如题图所示。
Private Sub Cmd1_Click( )
Dim a(1 To 200) As Integer '各个用户原始的购买记录
Dim dsj(1 To 45) As Integer '统计商品之间的关联次数
Dim i As Integer, t As Integer, ne As Integer, j As Integer, max As Integer
'数组a读入数据并在列表框分行输出,代码略
For i= 1 To 20 '20个用户
t= 1
For j= 1 To 9 '10个商品,共45种组合
For k=j+ 1 To 10
m=(i- 1)* 10
If
Then dsj(t) = dsj(t)+ 1
①
Next k
Next j
Next i
max=0
For i=1 To 45
If ② Then
max=dsj(i)
maxi=i
End If
Next i
t=9:nc= 1
Do While maxi>t
③
t=t-1
nc=nc+1
Loop
Text1.Text="关联最多的是商品"+Str(nc)+Str(maxi+nc)+":"+Str(max)+"次"
End Sub
① ② ③
| a=2 If a*a>3 Then a=a-2 End If Print a |
v=float(input("请输入速度(千米/秒):"))
if v>=7.91:
print("飞船成功飞行! ")
else:
print("飞船不能升空! ")
i = 1 : n = 5
Do While i <= n
x = Int(Rnd * 9) + 1
If x Mod 2 = 1 Then
a(i) = x
Else
a(n) = x : n = n - 1
End If
i = i + 1
Loop
已知数组a中各元素初始值均为0,执行该程序段后,数组a(1)至a(5)各元素值不可能的是( )
info= ["男",79,"女",97,"女",94, "男",91, "女",85, "女", 100, "男", 82]
tot=0
c =0
for i in range(0, len(info), 2):
if info[i] == "男":
continue
tot += info[i + 1]
c +=1
print (round(tot / c,1))
运行该程序段,输出结果是
请在划线处填入合适的代码
f=open("支出.txt","r")
mx=f.read()
print(mx)
t="";s=0
for i in mx:
if :
t=t+i
flag=True
elif flag:
s=s+int(t)
t=""
flag=False
if flag:
print("一共支出:",str(s),"元")
s = 0
i = 1
while i <= 100:
if i % 10 != 0 :
s+= i
i+ =1
print(s) ( )
For i=1 To 6
If i Mod 2<>0 Then
If a(i) Mod 10>5 Then
a(i)=a(i) \ 10
Else
a(i)=a(i) Mod 10
End If
Else
a(i)=a(i- 1)+1
End If
Next i
程序运行后a(1)到a(6)的值分别是2,3,4,5,0,1,则a(1)到a(6)各元素的初始值可能是( )
s= Text1. Text '输人的英语短文
t= Text2. Text '要统计的开头字母
b=Len(s): f = True
For i=1 To b
c = Mid(s, i, 1)
If ① Then
n= n+1
②
ElseIf c = "" Or c= "." Then
③
Else
f = False
End If
Next i
Label1.Caption= "以" + t + "为开头的单词个数:" + Str(n)
为实现上述程序,划线处应填入的代码是( )
①干支纪年是一种纪年历法,中国历史上很多重大事件都是以此命名的,例如:“1894年甲午战争,1911年辛亥革命等。把十天干(甲、乙、丙、丁、戊、己、庚、 辛、壬、癸)与十二地支(子、丑、寅、卯、辰、已、午、未、申、酉、戌、亥)顺序相配来记录年份,如:甲子、乙丑、丙寅……,一个周期为60年。对于公元后年份的干支纪年计算方法为:公元年数先减3得到基数,基数除以10,余数是天干,基数除以12余数则是地支。例如:1894-3=1891,1891除以10余1,天干是“甲”,1891除以12余7,地支是“午”,即1894年为甲午年。如果余数为0,则为天干或地支列表中的最后一位,辛亥年的地支就是这样求得。
②请填空完善该程序,运行后按程序提示输入:
请输入年份:1894 屏幕将输出结果为:1894年是:甲午年
③编写完成后原名保存并关闭应用软件。注:程序修改时,请把下划线及序号删除;不能删除注释语句。
a = ['甲', '乙', '丙', '丁', '戊', '已', '庚', '辛', '壬', '癸']
b = ['子', '丑', '寅', '卯', '辰', '巳', '午', '未', '申', '酉', '戌', '亥']
year1=int(input('请输入年份:'))
year2=
x=year2%
if x==0:
x=10
y=
if y==0:
y=
print(year1,'年是:',a[x-1]+b[]+'年')

n = int(input("请输入行数:"))
if n % 2 == 0: #保证n的值为奇数
n=n-1 a=[]
for i in range(n):
if i<=n//2:
b=2*i+1 #当在上半部分的时候
else:
#当在下半部分的时候
a.append(" "*w+"&"*b)
for s in a:
请输入行数:9
请输入行数:6
print(s)
上述程序中划线处可选语句为( )
①b=n-2*i+1 ②b=(n-i)*2-1
③w=(n-b)%2 ④w=(n-b)//2