相关试卷
- 浙江省衢州市2024-2025学年高一下学期6月教学质量检测(期末)技术试题-高中信息技术
- 浙江省宁波市2024-2025学年高二下学期期末考试技术试题-高中信息技术
- 浙江省舟山市2024-2025学年高二下学期6月期末技术试题-高中信息技术
- 浙江省丽水市2024-2025学年高二下学期期末教学质量监控技术试题-高中信息技术
- 浙江省浙南名校联盟2024-2025学年高二下学期期末联考技术试题-高中信息技术
- 浙江省宁波市九校2024-2025学年高二下学期期末考试技术试题-高中信息技术
- 2025届浙江省Z20联盟(名校新高考研究联盟)高三下学期第三次联考技术试题-高中信息技术
- 2025届浙江省强基联盟高三下学期三模技术试题-高中信息技术
- 浙江省诸暨市2024-2025学年高三下学期5月适应性考试信息技术试题
- 2025届浙江省温州市普通高中高三下学期第三次适应性考试(三模)技术试题-高中信息技术
-
1、已知 a=13,b=2,c=10,d=3,e=2,则表达式“a-b*c∥d%e”的值为( )A、12.3 B、8 C、3 D、13
-
2、下列给变量名b的赋值语句中,赋值后变量a是整型的是( )A、a=0x16 B、a=8/4 C、a =1e-2 D、a ='1'
-
3、下列给变量名a的赋值语句中,赋值后变量a不是实型的是( )A、a=5.0∥2 B、a='2.0' C、a=6/2 D、a=3%2.0
-
4、表达式100%8*2-5运算的结果为( )A、2 B、8 C、3 D、6
-
5、(多选)下列变量名中,合法的有( )A、_BMi B、true C、2bmi D、bmi E、B—mi F、B2mi
-
6、题目:输入两个数和一个运算符(+或-)。实现:如果运算符号为“+”,则输出a+b,否则输出a-b。
编写代码。请打开IDLE或者MUPython进行编辑。
调试运行。将代码与结果截图粘贴。(1)、字符串是以单引号或双引号括起来的任意文本。为“+”意思是等于“+”,等于符号在Python中为(2)、从键盘输入一个数到计算机中需要借助输入函数。输入函数是( )A、read( ) B、input( ) C、in( )(3)、input( )默认的类型是字符串类型。如果需要输入数值的话,需要用int( )或者float( )转换为数值。这里使用获取第一个数。获取第二个数的代码为。 -
7、程序运行结果是:
-
8、str[0:7 ]字符串的索引是从为0开始在。这里是从字母开始,到字母结束,一共个字母.
-
9、表达式(‘5’+‘6’)*3的结果是( )A、33 B、‘565656’ C、‘168’ D、语法错误,程序报错
-
10、下列Python程序执行后,可以输出“中国”在代码段是( )A、name=='中'; print(name) B、name='中国'; print('name') C、print(中+国) D、name='厦门'; name='中国'; print(name)
-
11、以下不属于Python关键字的是( )A、no B、or C、is D、in
-
12、Python不支持的数据类型( )A、int B、char C、float D、chr
-
13、Python表达式30+2**5//3-2的值为( )A、29 B、30 C、38 D、31
-
14、下列Python表达式值为5的是( )A、5.0**1 B、10//2 C、10.2/2 D、10%2
-
15、小明设计一种简易的加密方式,规则如下:
A)在输入的字符串中提取英文字母,作为需要加密的明文(明文字符数必须是3的倍数,不足3位的舍去)
B)将明文ASCII码分成3个字节一组,顺次连接后得到24位二进制数;
C)将得到的24位二进制数字按每6位一组分成4组,每组6个位;
D)在C)中得到的6个位前补上2个0,得到8个字节的二进制数;
E)将D)中得到的8个二进制数分别转换为十进制数;
F)将得到的数字用随机产生的大写字母连接起来,以大写字母结尾
按照上述规则,设计了一个加密VB程序,功能如下:单击“加密”按钮Command1,程序依次将文本框Text1中英文字母提取,将3的倍数个的字母转换为4个数字,并输出在文本框Text2中程序运行效果如下图所示。请回答下列问题:
(1)、在Text1中输入A9B20C@D1E,已知产生的随机字符顺序为英文字母表,则在Text2中显示的是。(2)、请在划线处填入合适代码。Private Sub Command1_ Click()
Const maxn= 100
Dim s As String, i As Integer, n As Integer
Dim ch As String, k As Integer, jg As String
Dim a(1 To maxn) As Integer, b(1 To maxn) As Integer
s= Text1. Text
n=0
For i=1 To Len(s)
ch= Mid(s, i, 1)
If Then
n=n+1
a(n)= Asc(ch)
End If
Next i
For i=0 To k
b(i * 4+1)=a(i*3+1)\ 4
b(i*4+2)=
b(i*4+3)=(a(i*3+2)Mod16)* 4+a((i- 1) *3+3)\ 64
b(i*4+4)=a(i*3+3)Mod64
Next i
Randomize
jd= ""
For i=1 To 4 * (k+1)
jd=jd+Str(b(i)) +
Next i
Text2. Text=jd
End Sub
Function pd(c As String) As Boolean
pd= False
If c>="A" And c<="Z" Or c>="a" And c<="z" Then:
pd= True
End If
End Function
-
16、某数据解密方法描述如下:对输入的密文(由英文字母或阿拉伯数字组成的字符串)进行解密,解密后输出明文。解密时对密文中的每个字符进行如下处理:
1)将该字符的ASCII码转换成对应的8位二进制;
2)将对应的8位二进制数进行按位取反(1变0,0变1);
3)将产生的8位二进制数循环左移2次;
4)将最后产生的8位二进制数转换成对应的十六进制数。例如,密文小写字母“d”通过上述解密算法解密后生成的明文是“6E”,信息加密过程如图b所示。
实现上述功能的VB程序如下:在文本框Text1中输入密文,单击“解密”按钮Com-mand1,程序对密文数据依次进行解密处理,在文本框Text2中显示解密后生成的明文。
程序运行界面如图c所示。实现上述功能的VB程序如下,请回答下列问题:
(1)、如果输入密文为小写字母“a”,则解密后得到的明文是。(2)、请在划线处填入合适代码。Function jiemi(m As String) As String '将4位二进制数转换成相应的十六进制数
Dim k As Integer, i As Integer
Dim str As String
str=“0123456789 A BCDEF”
k=0
For i=1 To 4
k=k * 2+Val(Mid(m, i, 1))
Next i
End Function
Private Sub Command1_Click()
Dim ans As String, s As String, ch As String, ret As String
Dim s1 As String, s2 As String
Dim i As Integer, m As Integer, asc1 As Integer, n As Integer
s= Text1. Text
ans=“”
For i=1 To Len(s)
ch= Mid(s,i, 1)
'取出第i个字符存入变量ch
asc1= Asc(ch)
ret =“”
For m=1 To 8
'完成解密步骤(1)和步骤(2)
ret=n & ret
asc1=asc1 \ 2
Next m
ret= Mid(ret, 3,6) +Mid(ret, 1, 2)
'完成解密步骤(3)
s1 = jiemi(Mid(ret, 1, 4))
ans= ans &s1 &.s2 '将第i个解密后的字符添加到变量ans的末尾
Next i
Text2. Text= ans
End Sub
-
17、下面是一个加密/解密程序。加密的算法是:将原文中每个字符的ASCII码加上该字符在原文中的位置数(设字符在原文中是第n个字符,则其位置数是n被10除的余数,当余数为0时,其位置数为10。例如,原文字符串为“meet me at sunset”,第一个字符“m”,其位置数为1,而“s”为第12个字符,其位置数是被10除的余数2,其余依次类推)作为密文字符的代码,再将密码字符逆序排列(例如ABCD,逆序排列为DCBA)即为密文。解密算法是加密算法的逆运算,运行效果如图所示:(1)、如图所示,如果原文中字母“g”后面添加字母“h”,按“加密”按钮后,字母“h”对应的密文为: 。(2)、实现上述功能的VB程序如下,请在划线处填入合适代码:
Private Sub Command1_Click( ) '加密
Dim enc As String, dec As String, i As Integer
Dim s As String, n As Integer
dec= Text1. Text
For i=1 To Len(dec)
s=
n=i Mod 10
If n=0 Then n= 10
enc=Chr(Asc(s)+n) & enc
Next i
Text2. Text= enc
End Sub
Private Sub Command2_ Click( ) '解密
Dim enc As String, dec As String, i As Integer
Dim n As Integer, s As String, p As Integer
enc= Text2. Text
n= Len(enc)
For i=1 To n .
s= Mid(enc, i, 1)
p=
If p=0 Then
dec= Chr(Asc(s)-p) & dec
Next i
Text1. Text= dec
End sub
-
18、某字符(限ASCII字符)加密算法,对明文中的每个字符进行下列加密处理:
1)将该字符的ASCII码转换成对应的2位十六进制数;
2)将产生的十六进制数互换位置;
3)步骤(2)产生的二位十六进制数即为该明文字符加密后的密文字符。
小明按照上述方法,设计了一个字符串加密的VB程序,功能如下:单击“生成密文”按钮Command1,程序依次将文本框Text1中每个字符按上述规则进行加密处理,连接这些加密字符,最后在文本框Text2中输出加密结果。程序运行界面如图所示
实现上述功能的VB程序如下:
Private Sub Command1_ Click()
Dim s As String, a As String, ans As String
Dim c As Integer, i As Integer
Dim c1 As Integer, c2 As Integer
Dim d1 As String, d2 As String
s= Text1. Text
ans =“”
For i=1 To Len(s)
a=Mid(s, i, 1)
c= Asc(a)
c1=c \16
c2= ①
d1= Mid(Str(c1), 2, 1) '使用Str(c1)将在字符c1前增加一个空字符
If c2>>=10 Then ② Else d2 = Mid(Str(c2), 2, 1)
ans= ③
Next i
Text2. Text= ans
End Sub
(1)、按照上述加密算法,明文“B”生成的密文是。(2)、请在划线处填入合适代码。① ② ③
-
19、某日期加密授权码生成方法描述如下:
1)授权码由10位字符组成,前8位为日期的密文,后2位为验证码;
2)取日期的第1位字符,若该字符第一次出现,则直接取其对应加密字符,否则取下一个不重复的加密字符。按此操作,依次取出该日期余下各位对应的加密字符;
3)求出所有日期字符数值的和,将和除16取余加1得到一位验证码字符;若和不小于16,则将和除16取整加1得到另一位验证码字符,否则另一位验证码字符为“X”。取出验证码重复时,处理规则与(2)相同。
加密(验证码)字符对应表如下。
值(十进制)
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
加密(验证码)字符
K
n
G
j
L
t
W
b
O
a
P
H
Z
q
Y
c
小明设计了一个生成8位日期(YYY YMM-DD格式)授权码的VB程序。程序功能如下:在文本框Text1中输入一个8位有效日期,单击“生成授权码”按钮Command1,在标签Label2中显示出该日期的授权码。运行效果如图所示。
实现上述功能的VB程序段如下:
(1)、请在划线处填入合适代码:Dim f(0 To 15) As Integer
Const Code=“KnGjLtWbOaPHZqYc”
Private Sub Command1_ Click()
Dim rq As String, sq As String
Dim c As Integer, i As Integer, d As Integer
For i=0 To 15
f(i)=0
Next i
rq= Text1. text
sq =””:d=0
If Len(rq) <> 8 Then
Label2. Caption=“请输入8位日期!”
Else
For i=1 To 8
c= Val(Mid(rq,i, 1))
d=d+c
sq =+sq
Next i
If d >=16 Then
yz= GetChar(d Mod 16+1) +GetChar(d \ 16+1)
Else
yz= GetChar(d Mod 16+1)+“X”
End If
Label2. Caption=sq+yz
End If
End Sub
'获取不重复的加密字符
Function GetChar(x As Integer) As String
Dim flag As Boolean
flag= False
Do While flag= False
f(x)=f(x)+1
If f(x)=1 Then
f(x)=f(x)+ 1
flag= True
Else
x=(x+1) Mod 10
End If
Loop
End Function
(2)、若输入的日期是“20170818”,则该授权码的验证码字符是。 -
20、某字符串(字节数为3的倍数)编码规则如下:
1)将该字符串内码分成3个字节一组,顺次连接后得到24位二进制数;
2)将得到的24位二进制数字按每6位一组分成4组,每组6个位;
3)在每组数字前补上两个0,得到4个字节的二进制数;
4)将(3)中得到的四个二进制数分别转换为十进制数;
5)将每个十进制数转换为1个加密字符,对应的“密码表”按数值由小到大依次为“ABCDEF GHIJKLMNOPQRSTUV WXYZ-abcdefghijklmnopqrstuvw xyz0123456789+/”
小明按照上述方法,设计了一个字符串(仅包含ASCII字符)加密的VB程序,功能如下:
单击“加密”按钮Command1,程序依次将文本框Text1中每3个字符的ASCII码值作为4个字节转换为四个加密字符,连接这些加密字符,最后在文本框Text2中输出加密结果。
程序运行效果如图所示。
实现上述功能的VB程序如下:
(1)、在上述加密算法步骤(4)中,得到的十进制数最大是。(2)、请在划线处填入合适代码。Function Code2Char(c As Integer) As String
Dim s As String
s=“ABCDEFGHIJKLMNOPQRSTU-VWXYZabcdefghijklmnopqrstuvwxyz 0123456789+ /”
Code2Char=
End Function
Private Sub Command1_Click() '加密过程
Dim n As Integer, s As String, i As Integer, ss As String
Dim a1 As Integer , a2 As Integer, a3 As Integer
'存储加密前字符ASCII码
Dim b1 As Integer, b2 As Integer '分别存储分割、转换后的前两个十进制数
Dim b3 As Integer , b4 As Integer '分别存储分割、转换后的后两个十进制数
s= Text1. Text
n= Len(s)
ss=””
For i=1 To n ()
a1= Asc(Mid(s, i, 1))
a2= Asc(Mid(s, i+1, 1))
a3= Asc(Mid(s, i+2, 1))
b1=a1\ 4
b2=(al Mod 4) * 16+(a2 \ 16)
b3=
b4=a3 Mod 64
ss=ss+Code2Char(b1)+Code2Char(b2) + Code2Char( b3)+Code2Char( b4)
Next i
Text2. Text= ss
End Sub