看板 C_and_CPP 關於我們 聯絡資訊
開發平台(Platform): Dev-C++ 問題(Question):如何解決輸入英文字母也會判斷 餵入的資料(Input):A,B,C,a,b,c...etc 預期的正確結果(Expected Output):及格和不及格 程式碼(Code): # include <iostream> using namespace std; int main(){ int a; cout<<"請輸入一個分數"<<endl; cin>>a; if (a>=0&&a<=100) { if (a>=60) cout<<"及格"<<endl; else cout<<"不及格"<<endl; } else cout<<"成績輸入錯誤"<<endl; system("pause"); return 0; } 補充說明(Supplement): 我是想要讓使用者只能輸入數字,如果不是輸入數字 就會一直迴圈請你輸入數字 或者直接印出輸入錯誤的訊息 正確來說應該要能出現提示 一直說重新輸入正確數字或是選擇離開 這樣是最好的 有爬過文...有人說cin 和 scanf有差別 不知道我這個問題能不能 用cin和scanf 都有不解法呢? 感謝各位大大幫忙! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.251.197.48 ※ 編輯: junny0204 來自: 111.251.197.48 (07/06 12:27) ※ 編輯: junny0204 來自: 111.251.197.48 (07/06 12:28)
tropical72:硬要用cin就丟到string buffer 慢慢做. 07/06 12:37
loveme00835:將輸入當成字串,再依內容決定要不要轉數字 07/06 12:38
james732:http://pastie.org/2170716 07/06 12:42
james732:你可以執行上面這隻程式,輸入數字與非數字,觀察結果 07/06 12:42
jigfopsda:看一下這兩個 isdigit, isalpha 07/06 19:46
herman602:好像還意要搭配cin.clear()的樣子吧 07/07 19:22