我用C語言實現給出一個思路。對於題主的問題,可以考慮使用getchar()函式來實現,具體的步驟是這樣的:
上述步驟中,有幾個技術點需要你去了解的:getchar()函式的使用,緩衝區的概念,標準輸入stdin的概念,輸入結尾標記EOF的概念。關於這些概念,我在另一個回答中已經闡明,有興趣的可以參考我的這個回答:C語言統計輸入的字元數? - 知乎
回到當前問題中來,按照上述思路,可以初步擬定一份程式碼如下:
程式碼不長,應該比較好理解。換行符"\n"、空格符" "、製表符"\t"都算作空白字元。
但是對於統計中文字元,程式碼還有所欠缺,不過對於統計一般的字元應該綽綽有餘了。我運行了下,結果如下:
最後我是以CTRL+Z來模擬鍵盤輸入結束!
我用C語言實現給出一個思路。對於題主的問題,可以考慮使用getchar()函式來實現,具體的步驟是這樣的:
使用getchar()函式從stdin,更準確的說,是從緩衝區中逐個讀入字元;判斷當前讀入的字元屬於數字還是字母還是空白字元還是其他字元;根據當前讀入的字元型別,使得對應的字元計數器自增1;如果讀取到EOF,則表明讀取完畢。上述步驟中,有幾個技術點需要你去了解的:getchar()函式的使用,緩衝區的概念,標準輸入stdin的概念,輸入結尾標記EOF的概念。關於這些概念,我在另一個回答中已經闡明,有興趣的可以參考我的這個回答:C語言統計輸入的字元數? - 知乎
回到當前問題中來,按照上述思路,可以初步擬定一份程式碼如下:
程式碼不長,應該比較好理解。換行符"\n"、空格符" "、製表符"\t"都算作空白字元。
但是對於統計中文字元,程式碼還有所欠缺,不過對於統計一般的字元應該綽綽有餘了。我運行了下,結果如下:
最後我是以CTRL+Z來模擬鍵盤輸入結束!