-
1、有字符串s="Hello",若对其中的元素进行s[:4]访问,则结果为( )A、'Hel' B、'o' C、'Hell' D、'Hello'
-
2、已知a、b为整型变量,下列表达式的值一定为False的是( )A、a>b and b>a B、a!=b C、a>=b or b>=a D、a=b
-
3、某算法的部分流程图如图所示,执行该流程时,若输入n的值为11,则输出s的值是( )
A、1011 B、1101 C、100 D、0100 -
4、下列关于算法及算法的特征的描述,正确的是( )A、算法只能使用一种程序语言来实现 B、自然语言不能用来描述算法 C、任何算法都必须有输出 D、算法的处理步骤可以是无限的
-
5、在Python中,设x=1234,能正确得到其百位数字“2”的表达式是( )A、x%100 B、x%100//10 C、x//10%10 D、x//100%10
-
6、有如下Python程序段:
x=10;y=30
x=x+y
y=x-y
x=x-y
print(x,y)
执行上面Python程序段,输出结果是( )
A、40 30 B、30 10 C、30 40 D、0 20 -
7、Python表达式60//7%2的值为( )A、60 B、0 C、1 D、2
-
8、Python表达式4+17//3**2的值为( )A、40 B、5 C、49 D、2
-
9、在Python中,变量x的值为3.14,y的值为-8,执行语句x=int(x)+abs(y)后,x的值是( )A、4 B、5 C、11 D、12
-
10、一段时长为40秒、分辨率为1024×512像素、每秒25帧、每帧图像使用16位色的未经压缩的AVI格式无声视频,其文件存储容量为( )A、8000MB B、8192MB C、1024MB D、1000MB
-
11、一段时长为4分钟、采样频率为32kHz、量化位数为16、双声道未经压缩的Wave格式音频文件,其存储容量约为( )A、15MB B、30MB C、120MB D、240MB
-
12、一张BMP图像的分辨率为2048×1024,其图像大小为1MB。该图像最多支持的颜色数量是( )A、4 B、16 C、32 D、128
-
13、下列关于ACSII编码的说法,正确的是( )A、共有127个字符 B、每个字符用1个字节中的高7位编码 C、每个字符占用1个字节的存储空间 D、可以用于汉字字符的编码
-
14、使用UltraEdit软件观察字符内码,如图所示,下列说法正确的是( )
A、字符“10”的内码是3AH B、图中共有12个ASCII码 C、小写字母z的十六进制编码为80H D、字符“!”的内码是6E 21 -
15、小李正在开发一款图像处理软件,该软件将图像的每个像素的颜色用RGB值表示,RGB值的范围是0到255。为了更高效地存储图像,软件将RGB值以十六进制表示,并将每个像素的RGB值存储为一个24位二进制数。
已知某个像素的RGB值为(RGB:255,128,64),请问,下面哪一项表示该像素的24位二进制数?( )
A、11111111 01000000 01000000 B、11111111 10000000 01000000 C、11111111 01000000 10000000 D、11111111 10000000 11000000 -
16、二进制数101101对应的十进制数是( )A、39 B、45 C、47 D、90
-
17、下列有关模拟信号与数字信号的说法,正确的是( )A、用水银温度计测得液体温度属于数字信号 B、音响中发出的声音属于模拟信号 C、模拟信号未经数字化就可以被计算机处理 D、模拟信号转换为数字信号后无法再转换为模拟信号
-
18、为了保障个人信息安全,下列措施有效的是( )A、关闭防火墙软件 B、提升自身的信息安全意识 C、个人敏感信息保存在U盘中 D、个人账户的密码不要定期更改
-
19、下列关于数据与大数据的说法,正确的是( )A、数据是现代科学研究的重要资源 B、大数据的数据量庞大,价值密度高 C、计算机中的数据都以ASCII码存储 D、大数据的应用降低了用户隐私信息泄露的风险
-
20、某数据序列data中的元素均为小于127的正整数。现在要对data进行加密,处理过程分“变换”和“重排”两步。“变换”处理方法是用指定的n组序列、…依次对data进行变换。利用Ri对data进行变换的过程是:在data中查找所有与Ri相同的子序列,将找到的每个子序列中的元素值加上Ri的长度值Li , 并在各子序列前插入一个标记元素(值为127+Li),这些子序列及标记元素不再参与后续的变换。
如data为[3,5,1,6,3,8,7,5,1,8,7],指定的两组序列为[5,1]、[3,8,7],“变换”处理后的data为[3,129,7,3,6,130,6,11,10,129,7,3,8,7]。对data“重排”处理通过给定的shuff函数实现。
请回答下列问题:
(1)若data为[3,5,1,6,3,8,7,5,1,8,7],指定的两组序列为[5,1]、[8,7],经过“变换”处理后,data中插入的标记元素个数为。
(2)“重排”处理的shuff函数如下:
def shuff(data, c): # 根据列表c对列表data进行重排
# 若列表data的长度不是列表c长度的整数倍,则用0补足,代码略
m = len(c)
s = [0] * m
k = 0
while k < len(data):
for i in range(m):
s[i] = data[k + i]
for i in range(m):
data[k + i] = s[c[i]]
k += m
若data为[3,129,7,3,130,6,11,10],c为[1,3,0,2],调用shuff(data, c)后,data的最后一个元素值为。
(3)实现加密功能的部分Python程序如下,请在划线处填入合适的代码。
def compare(data, i, r):
# 函数功能:返回data从索引i位置、r从索引0位置开始的连续相等元素的个数
# 例如r为[7, 3, 6],data从索引i位置开始的元素依次为7, 6, 7, 3, …,函数返回1
j = 0
while j < len(r) and i + j < len(data):
if①:
break
else:
j += 1
return j
def trans(data, r, segs):
newsegs = []
for s in segs:
if s[0] == 0:
h = i = s[1]
m = len(r)
while i + m <= s[2] + 1:
if compare(data, i, r) == m:
if i > h:
newsegs.append([0, h, i-l]) # 为newsegs追加一个元素
newsegs.append([m, i, i + m-1])
i += m
②
else:
i += 1
if h <= s[2]:
newsegs.append([0, h, s[2]])
else:
newsegs.append(s)
return newsegs
def update(data, segs):
for s in segs:
if s[0] != 0:
data.append(0)
p = len(data)-1
for i in range(len(segs)-1, -1,-1):
for j in range(segs[i][2], segs[i][1]-1,-1):
③
p-= 1
if segs[i][0] > 0:
data[p] = 127 + segs[i][0]
p-= 1
# 读取待加密数据存入data,读取指定的若干组用于变换的序列存入rs,代码略
'''
列表segs用于记录data的变换信息,segs[i]包含三个元素,segs[i][0]、segs[i][1]、segs[i][2]分别表示data中一个子序列的状态、起始位置和结束位置,如果segs[i][0]为0,则表示该子序列未经过变换。
'''
segs = [[0,0,len(data)-1]]
for r in rs:
segs = trans(data,r,segs) # 根据r更新segs
update(data, segs) # 利用segs完成对data的变换操作
c = [1,3,0,2]
shuff(data, c)
# 输出加密后的data序列,代码略