高中信息技术浙教版(2019)选修1:3.1 字符串-课后练习 (1).docxVIP

高中信息技术浙教版(2019)选修1:3.1 字符串-课后练习 (1).docx

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

作业练习

课程基本信息

学科

信息技术

年级

高二

学期

春季

课题

字符串的应用

教科书

书名:数据与数据结构

出版社:浙江教育出版社

学生信息

姓名

学校

班级

学号

作业练习

(22.04宁波金兰教育组织高二技术)已知某数据加密方法如下:将字符的内码以字节为单位进行加密。将每个字节的后5位转换为十进制数,后面跟上“,”和该字节的前3个二进制位转换为十进制数,形成该字节的加密形式。例如:

内码(十六进制)

AF

D2

二进制11010010

后5位十进制

15

18

前3位十进制

5

6

加密结果

15,5,18,6

按照上述规则,小陈设计了一个Python的解密程序如下所示。请回答下列问题:

(1)若加密结果为“3,6,5,6”,则原来十六进制内码为。

(2)完成划线处程序代码。

defdtoh(x):

s1=0123456789ABCDEF

str=

whilex0:

str=s1[x%16]+str

returnstr

a=[0]*50

k=0;p=0

jm=

s=input(请输入密文:)

foriinrange(len(s)):

ch=s[i]

if0=ch=9:

else:

ifk%2==1:

a[k]=p*32+a[k-1]

else:

k+=1;p=0

a[k]=p*32+a[k-1]

forjinrange(1,k+1,2):

jm+=dtoh(a[j])

print(jm)

(22.08A9协作体暑假返校联考)字符串分段。输入一串仅由小写字母组成的字符串s,将这个字符串划分为尽可能多的小片段,要求同一个字母只出现在其中的一个片段中,并按照分段顺序逐行输出分段结果。程序运行界面如下图所示。

(1)实现上述功能的Python程序如下,请在划线处填入合适的代码。

s=input(请输入一串仅包含小写字母的字符串:)

c=0

p=[-1]*52#数组p用来记录各个小写字母出现的起始位置和结束位置

#a[0]记录a出现的起始位置,a[1]记录a出现的结束位置,依次类推

foriinrange(0,len(s)):#记录各字符第一次和最后一次出现的位置

a=①

ifp[2*a]==-1:

p[2*a]=i

else:

p[2*a+1]=i

foriinrange(0,26):

ifp[2*i]p[2*i+1]:

p[2*i+1]=p[2*i]#只出现一次的字符,起始位置就是结束位置

ifp[2*i]!=-1:

c+=1

foriinrange(0,c):#将字符位置按照出现的起始位置升序排序

forjinrange(25,i,-1):

ifp[2*j]-1:

ifp[2*(j-1)]p[2*j]or②:

p[2*(j-1)],p[2*j]=p[2*j],p[2*(j-1)]

p[2*(j-1)+1],p[2*j+1]=p[2*j+1],p[2*(j-1)+1]

t1,t2=p[0],p[1]#字符串分段

foriinrange(1,c):

ifp[2*i]t2andp[2*i+1]t2:

elifp[2*i]t2:

print(s[t1:t2+1])

t1,t2=p[2*i],p[2*i+1]

print(s[t1:t2+1])

(2)运行程序后,若输入的字符串s为“hshjhqueeqabaa”,输出的结果一共有行,其中,第二行显示结果为。

【参考答案】

【答案】(1)C3C5

(2)①x//=1

文档评论(0)

K12教育资源 + 关注
实名认证
文档贡献者

教师资格证持证人

该用户很懒,什么也没介绍

领域认证该用户于2023年02月03日上传了教师资格证

1亿VIP精品文档

相关文档