#新手 C語言scanf問題
輔仁大學
各位好!我最近在自學C語言遇到一些問題想請問版上的大大們QQ
我寫了一個字元取代程式,程式目標是讓user可以把str1裡面的字串的一個英文字母替換成別的字元,ex:h都改成x,則str1會變成Txis is fun!,以下是程式碼:
我遇到的問題是第10、12行,在我輸入完要被取代的英文字並按下Enter後就沒辦法讓我再輸入要被取代的英文字母,第二個printf執行完程式就結束了,看起來是y存到換行了,程式執行如下:

我的推測是因為當我輸入’h’並按下’Enter’後,h和enter這兩個資料都被寫入到stdin內,此時執行scanf時,程式會從stdin讀入資料,因此第一個scanf雖然沒問題,但第二個scanf卻讀到我按下的’Enter’,所以才會得到這樣的結果。
不過我不確定我這個想法正不正確,因此想詢問大家QQ
另外想請問如果是遇到這種狀況,該怎麼寫才會正確呢?
先謝謝各位了><


