我试图做到这一点充分证明/左程序和右对齐给定的字符串。 我已经做了,你知道有多少位必须词在字符串中的一部分,但我不明白的是如何添加或在字与字之间插入的处所。
Answer 1:
你可以
看看有多少话是每行
通过单词数把数位,现在我们知道需要多少空间将被添加到每个词平均
对字符串中的每个单词,单词+ = [数目的空格]
Answer 2:
一个简单的算法做了铺展
for (int i=0; i<num_words-1; i++) {
int s0 = i * extra_spaces / (num_words - 1);
int s1 = (i + 1) * extra_spaces / (num_words - 1);
// add (s1 - s0) spaces between word[i] and word [i+1]
}
Answer 3:
查找字符串的长度 - SL
计数的空间数量 - N的
计算L和线的长度之间的差 - LL
计算每个空间的宽度 - 瓦特
w=(ll-sl)/n
在一次打印字符串一个字,用W前进,当你有一个空格。
文章来源: C++ text full justification