内容正文:
浙江良品图书有限公司
精彩三年学考尖峰 信息技术 2022浙江
专题梳理9 字符处理2:填空
单击此处编辑母版文本样式
1
【必修1 第38—94页 指导意见第13—19页】
1.常见字符表达式
单击此处编辑母版文本样式
单击此处编辑母版文本样式
2.字符串遍历与数据提取
单击此处编辑母版文本样式
实现运行界面的常见方式如下:(s=input())
单击此处编辑母版文本样式
单击此处编辑母版文本样式
典例1实现如下程序:输入一个非负数,将该数各位上的数字反转得到一个新数。得到的新数,除了原数为0之外,反转得到的新数最高位不应为0。程序运行如下图所示。
请在画线处填入合适的代码:
a=input('请输入数字')
s=''
单击此处编辑母版文本样式
①____________
while n>1 and a[n-1]=='0':
②___________
for i in range(n,0,-1):
s=③_______________
print(s)
解析 借助len()函数求取字符串的长度,通过倒序,确定最后一个非零数字的位置,再从该位置开始对字符串倒序组合输出。
n=len(a)
n-=1
s+a[i-1]
单击此处编辑母版文本样式
典例2字符串从左到右和从右到左完全一样,如“1221”“12321”。设计程序,能针对键盘输入的字符串进行判
断,输出结果为“对称”“不对称”程序运行如下图所示。
请在画线处填入合适的代码:
s=input('请输入待测字符串:')
n=len(s)
单击此处编辑母版文本样式
f= True
for i in range(n∥2):
c1=s[i]
①__________________
if c1 !=c2 :
f=False
break
if②___________________:
print('对称')
c2=s[n-1-i]
f或f==True
单击此处编辑母版文本样式
else :
print('不对称')
解析 f作为标志位,默认为True,即对称;若出现不对应,则被赋值为False。程序依次对正数次序和倒数次序的字符做比对由分析可知,正数和倒数字符的下标和恒为n-1,由此可得c2的下标。
单击此处编辑母版文本样式
典例3编写程序,实现如下功能:由键盘输入需要输出图形的行数,程序运行后,输出由字母A构成的金字塔样式的图形。当行数输入8时,运行效果图如图所示。
请在画线处填入合适的代码:
n=int(input('请输入行数'))
单击此处编辑母版文本样式
for i in range(n):
s=''
for j in range(n-i):
s=s+”
for j in range(①__________):
s=s+'A'
②_____________
解析 由图示图形可得,第i行对应有2*i+1的“A”;s为当前行的字符串,组合完成后需输出。
2*i+1
print(s)
单击此处编辑母版文本样式
典例4删除字符串中的重复字符。程序功能如下:由键盘输入字符串,运行程序后,界面输出处理后的结果。程序运行如下图所示。
请在画线处填入合适的代码:
x=input('请输入原始字符:')
①_____________
n=len(x)
单击此处编辑母版文本样式
s=x[0] #存放未重复字符
for i in range(1,n):
flag=0
if②___________ #判断是否为重复字符
flag=1
if③______________:
s=s+x[i]
print('处理后的结果为:',s)
x[i] in s
flag==0
单击此处编辑母版文本样式
解析 n存放输入字符串x的字符长度;s为未重复字符组成的字符串,判断是否重复,即判断x[i]是否在s中,若在,则重复;flag为0表示未重复,为1时表示重复。
单击此处编辑母版文本样式
$