组卷题库 > 高中信息技术试卷库
试题详情
需要把一个由小写字母构成的字符串s中的字符从左到右写入行中。每行最大宽度为20,如果往后新写一个字符导致该行宽度超过20,则写入下一行。

注意:每个字符的宽度不为1。给定一个列表width,其中width[0]是字符“a”的宽度,width[1] 是字符“b”的宽度,...,width[25]是字符'z'的宽度。

如图:输入字符串“aabbb”,“a”的宽度为 4, “b”的宽度为 6,所以“aabb”长度为

4+4+6+6=20写入第一行,最后一个”b”长度为6写入第二行。最后程序输出内容为“写入字符串s共需2行,最后一行宽度为:6”。

pythont程序如下:

width = [4,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6]

s =int( input("s:"))

L=0

count=1

for i in s:

  index=   ①  

  L=L+width[index]

  if L>20:

    L=   ②  

    count+=1

    print("小写字母宽度列表width为:")

  print(width)

print(f"写入字符串s共需{count}行,最后一行宽度为:{L}")

阅读程序回答:

知识点
参考答案
采纳过本试题的试卷
教育网站链接