在杂志中,印刷品通常被证明是合理的(分散的)以适应列。编写一个程序,该程序可以读取一行文本并使其两端对齐,以适合列宽 40。理由是通过以下方式实现的:
找出单词之间的间隙
增加间隙以拥有更多空间
某些间隙可能比某些其他间隙需要多一个空间
当程序运行时,显示应如下所示:
Enter a line of text: Hello there! How are you today?
1234567890123456789012345678901234567890
Hello there! How are you today?
请注意,“对齐标尺”显示在屏幕上。下面是如下所示的行:
1234567890123456789012345678901234567890
对齐标尺的唯一用途是检查程序是否正常工作。标尺的长度正好为 40 个字符,便于检查文本是否正确对齐。
在此示例中,每个间隙中的空格数为 33332。计算出每个间隙需要2个空格,并且有4个额外的空格。每个间隙都会添加一个额外的空间,直到多余的空间用完为止。
程序必须在文本中创建具有所需空格数的文本输出字符串。最终显示的是此输出字符串的 cout。
原理就是根据字符串长度计算出需要添加的空格数量,然后在每个字符后面逐个插入空格,直到空格数量用完为止。