Dim a(10) as Integer
Dim i As Integer
Dim s As Integer
For i=1 to 5
a(i)=i*1
Next i
s=a(3)+a(4)
Print s
上述程序运行后,变量s的值是 。
|
for i in range(2,5): print(i) |
n=45:m=25
Do While m<>0
r=n Mod m
n=m
m=r
Loop
Label1.Caption =Str(n)
该程序段运行后,标签Label1上显示的内容是( )
s=0
For i=1 To 2
For j=6 To 1 Step-2.
s=s+1
Nextj
Next i
Private Sub Command1_Click( )
Dim a(0 To 4)As Integer
Dim i As Integer
a(4)=Val(Text1.Text)
For i=3 To 1 Step-1
a(i)=a(i+1)/2
Next i
Text1.Text=Str(a(i+1))
End Sub
在文本框Text1中输入“128”,连续单击2次按钮Command1后,文本框Text1中显示的内容是( )
Dim i As Integer
Dim c As String, s As String, t As String
s = "2021 PYthon": t = ""
For i = 1 To Len(s)
c = Mid(s, i, 1)
If c >= "a" And c <= "z" Then
t = t + c
ElseIf c >= "0" And c <= "9" Then
t = c + t
End If
Next i
Text1.Text = t
执行该程序段后,文本框Text1中显示的内容是( )
i=0
while (①):
i=i+1
print(i)
在①处填写表达式,下列选择正桷的是( )
间隔2张取第6张纸牌,……直到取完为止(如果取的位置超过n,重新从1位置取)。如果有4张纸牌,那么取的纸牌编号依次为1,3,4,2。同样,可以知道每张纸牌的被取走的顺序如下表。
|
序号 |
1 |
2 |
3 |
4 |
|
1 轮次 |
1 | 2 1 | 3 1 | 4 1 |
| 2 轮次 | 2 2 | 2 | 4 2 | |
| 3 轮次 | 3 | 2 3 | ||
| 4 轮次 | 4 |
纸牌被取走顺序也可以理解为纸牌存留的轮次。每次取走一张纸牌后,下一轮第一张纸牌编号为该纸牌的后一张。上述例子中3第二个被取,留存轮次2,下一轮的第一张纸牌为4,剩下的纸牌留存轮次增加。
现在,只要给小九纸牌的数量n,他能通过逆推法快速地计算出取的纸牌编号顺序,方法如下(以n=4为例):
| 逆推得到的纸牌顺序 | 1 | 4 | 2 | 3 |
| 最终得到的纸牌编号 | 1 | 2 | 3 | 4 |
即在第i轮,上一轮纸牌轮次加1,并在后面增加一张轮次为1的纸牌。然后将轮次为1放在最前的位置,最后整体循环向右移动n-i次。直到n轮后,可知每张纸牌被取走的顺序,根据此顺序,得到每次取走纸牌的编号。
| 轮次 | 数组 | 1 2 3 4 |
| 1 | a(1)=1 | 1 |
| 2 | ①前一轮所有值加1 ②第二位增加数值1 ③将轮次为1的数放在最前 ④整体右移动2位 | 2 2 1 1 2 1 2 |
| 3 | ①前一轮所有值加1 ②第三位增加数值1 ③将轮次为1的数放在最前 ④整体右移动1位 | 2 3 2 3 1 1 2 3 3 1 2 |
| 4 | ①前一轮所有值加1 ②第四位增加数值1 ③将轮次为1的数放在最前 ④整体右移动0位 | 4 2 3 4 2 3 1 4 2 1 4 2 |
根据以上算法小九编写了如下VB程序,请回答下列问题。
Dim n As Integer
Dim a(1 To 100) As Integer
Private Sub Command1_Click()
Dim i As Integer, j As Integer,k As Integer
Dim ans As String, x As Integer
n = Val (Text1. Text)
a(1) = 1
For i=2 To n
For j=1 To i-1
Next j
j=i
Do While j>1
a(j)=a(j-1)
j=j-1
Loop
a(1) = 1
For j=1 Ton - i
k = a(1)
a(x) = k
Next j
Next i
ans =“”
For i=1 Ton
ans = ans + Str(a(i))
Next i
Label1. Caption =“序列为:”+ ans
End Sub
Function yd(i As Integer) As Integer
Dim j As Integer, tmp As Integer
For j=i To 2 Step -1
tmp=j+1
If tmp > i Then
a (tmp) = a(j)
Next j
yd=j+1
End Function
____
a,b=[0]*10,[False]*10
i=0
while i<=9:
____
if not b[r]:
a[i]=r
____
i=i+1
print(a)
则划线处的代码依次是( )
① r=random.randint(0,10)
② b[r]=True
③import random
④ b[i]=True
⑤from random import randint
⑥ r=random.randint(0,9)
num =
a = [0] * 8
for i in range(7,0,-1):
a[i] = #求反码
num = num // 2
a[0],i = 1 ,7
a[i] = a[i] + 1 #末位加 1
while and i > 0:
a[i] = 0
i -= 1
s = ""
for i in a:
s = s + str(i)
print(s)
某3行3列的格子初始状态如图a所示,1表示异常(由于不知名原因感染了病毒且具有传染性),0表示正常。除了边上一圈的格子,每个格子周围有8个格子,第一天某正常格子周围超过半数格子异常,则该格子第二天就会变异常,并且带有传染性。传染过程如图b所示,矩阵中1、2、3、4分别表示该格子第1天、第2天、第3天、第4天被感染,0表示未被感染。可以看出该矩阵格子第4天全部被感染。
编写VB程序,运行程序后,在Text1中输入矩阵规模(不超过10),单击“初始化”命令按钮,在List1中输出第一天所有格子的状态,单击“传播”命令按钮,在List2中输出所有格子的最终状态,并在Label2中输出第几天全部被感染或者“不会被全部感染”。
程序运行界面如图c所示。
Dim a(1 To 100) As Integer '存放格子状态
Dim b(1 To 100) As Integer '辅助作用
Dim zc(1 To 10000) As Integer '记录每一天的正常格子数
Dim n As Integer '存放矩阵规模
Private Sub Command1_Click()
Dim i As Integer, j As Integer, s As String
List1.Clear
n = Val(Text1.Text)
For i = 1 To n
s = ""
For j = 1 To n
a((i - 1) * n + j) = Int(Rnd() * 2)
s = s + Str(a((i - 1) * n + j))
If a((i - 1) * n + j) = 0 Then
Next j
List1.AddItem s
Next i
End Sub
Private Sub Command2_Click()
Dim i As Integer, j As Integer, tian As Integer, flag As Boolean
List2.Clear
'下面代码实现病毒传染过程
tian = 1: flag = False
Do While zc(tian) > 0
tian = tian + 1
For i = 1 To n * n
If a(i) = 0 Then
If Then b(i) = tian
Else
b(i) = a(i)
End If
Next i
For i = 1 To n * n
If b(i) = 0 Then zc(tian) = zc(tian) + 1
a(i) = b(i)
Next i
If Then flag = True: Exit Do
Loop
'在List2中输出所有格子的最终状态,代码略。
If flag Then
Label2.Caption = "不会被全部感染"
Else
Label2.Caption = "第" + Str(tian) + "天全部被感染"
End If
End Sub
'Judge函数用来判断第i行第j列的格子周围的异常格子数是否超过半数,超过半数返回True
Function Judge(i As Integer, j As Integer) As Boolean
'代码略
End Function
PRIVATE SUB FORM_CLICK( )
S=1
FOR I = 1 TO 5
S=S*I
NEXT I
PRINT S,I
END SUB
|
图1 |
|
图2 |
图3 |
import pandas as pd
import matplotlib.pyplot as plt
#图表中文显示处理,代码略
df=pd.read_excel("test.xlsx")
score=[]
for i in df.values:
js= ① #①处请选择 (填字母):A . df["信息"]+ df["通用"] / B . i[3]+i[4]
score.append(js)
df["总分"]=score
df1=df.groupby("班级",as_index=False) ["总分"].mean()
plt.title("期中技术平均分")
plt. ② (df1["班级"],df1["总分"],width=0.5) #②处请选择 (填字母):A . plot / B . bar /C . scatter
Dim s As String, i As Integer
Dim c As String, s1 As String
s =“Visual_ Basic_ 2018”
s1=“”
For i=1 To Len(s) Step2
c = Mid(s, i, 1)
If c>=“a”Andc<=“z” Then
s1=c+s1
End If
Next i
Text1. Text = s1
执行该程序段后,文本框Text1显示的内容是( )
程序运行后,依次输入:12 35 9 11 23 88 13 19 29 55
运行结果是:
import random
a= #随机产生三位正整数
flag=True
for i in range():
if a%i==0:
flag=False
if flag:
print(a,"是素数")
else:
print(a,"不是素数")
输出该新字符串,实现相应功能的Python程序段如下:
s=input("请输入字符串:")
que = [""] * 100 #该空队列可以满足需要
head = 0
tail = 0
for i in range( ① ): #原字符串全部字符依次入队
que[tail] = s[i]
tail+=1
print("加密后的串为: ")
while head < tail: #队列非空时
print(que[head], end="")
②
if head < tail: #队列非空时,出队的元素加入队尾
③
tail+=1
head+=1
上述程序段3个方框处的代码分别为( )
