Programming Practice

檔案 longest_palindrome_in.txt 是一個號稱世界上最長的迴文。寫一個 C 語言的程式執行下列的步驟以檢查此檔案的內文是否為迴文:

1. 將 longest_palindrome_in.txt 的檔案資料讀到一個字串的記憶體,

2. 移除此字串中所有非英文字母的字元,並將英文字母改為全部大寫或全部小寫的字母,

3. 將修改後之字串寫入一個檔案 longest_palindrome_out.txt,並在顯示器上輸出此檔案的長度,

4. 將修改後之字串的字母依序放入一個雙向連結表,此連結表的節點資料為一個字元;回報此連結表的節點個數,

5. 檢查雙向連結表所有節點形成的字串是否為一個迴文 (檢查到字串的中間即停止,並且在檢查過程中需將已被檢查過的節點立刻釋放回系統),

6. 將所剩餘點結點釋放回系統,

7. 在顯示器上回報檔案內容是否為一個迴文。

以下為程式執行範例:

 

The total length of the modified is 72061.
The number of nodes in the circular double-linked list is 72061.
>>>> The modified string of the input file is a palindrome.

*************************************************************************