scanf函式的‘微操’

仔細讀題,題目描述的是“多組輸入”,我們可以借助while回圈來實作!
通過查閱,大寫字母的ASCII碼值+32為對應的小寫字母,
看代碼:

但是,接下來測驗時,值卻不是我們所期待的,

這里多出來個*,于是我去仔細查閱了scanf的用法,而我們輸入’A’后敲擊回車,緩沖區真正出現的是’A\n’,scanf函式這一次把’A’錄走了,下次錄走了’\n’,而’\n’的ASCII碼值+32后就是*!
問題到此算是發現了,可是怎么解決呢,
我們可以在進入回圈時,可以用getchar()去錄入,
看下效果:


同型別題一道

這是判斷輸入的是否為字母,有了剛剛的基礎后,直接原代碼上去,附加額外的if判定即可,

當然,還有另一種比較方法,

好好學習!
將一些基本函式的用法一定要記住,包括回傳型別,變數型別,不能只知道大概!
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/263867.html
標籤:其他
下一篇:福爾摩斯之旅——實用除錯技巧
