閱讀下列說明和流程圖,回答問題1和問題2,把解答寫在答卷的對應欄内。
[說明]
在字元數組 S 中存放着一行長度為 L 的正文,每個數組元素存放一個字元。現假定正文僅由單詞、空格和句号組成,單詞由連續的英文字母組成。單詞與單詞之間可以有1個或多個空格、單詞至句号之間或句号至單詞之間可以有。個或。個以上的空格,兩上句号之間除空格符外至少有一個單詞。S 的第一個非空格字元不能是句号,最後一個非空格字元不一定是句号,S 的兩端可以有。個或。個以上的空格。現準備對 S 中的字元串進行編輯,使得空格盡可能均勻地分布在單詞之間。
該流程圖實作編輯前的預處理。流程圖中,首先統計S中單詞和句号的總數NW、空格,總數NB、句号或每個單詞的第’一個字母在S中的位置(存放在數組 SW 中)和每個單詞或句号的長度(存放在數組 HW 中,句号的長度置為 -1)。然後,計算單詞至單詞以及句号至單詞間的間隔總數B,最後計算每個間隔的于均空格數 N( 整數 )和剩餘的空格數 M。
[問題 1]
填充流程圖中的 ①~⑦ 框,使之成為完整的流程圖。
[問題 2]
為了檢查正文中句号的用法是否正确,需要在流程圖的 ① 處增設判斷及報錯處理( 見右圖 )。試用題中的有關符号填寫判斷框 ⑧ 和 ⑨ 的内容。
答案:
[問題1]
① H→HW[NW] ② 'false'→W ③ W:'false' ④ H→HW[NW] ⑤ 'false'→W ⑥ 0→H ⑦ HW[1]:-1
[問題2]
⑧ NW:0 ⑨ HW[NW]:-1