[問題] 希望輸入數字但輸入的是文字
int i_piece;//玩家所輸入之數字
int inputOK = 1;
do{
cout << "請輸入號碼(1~9)....";
cin >> i_piece;
if(i_piece>0 && i_piece<10){//判斷是否介於1~9之間
if(i_board.arr[i_piece] == 0) {//判斷是否未放置棋子
i_board.last_put = i_piece;
i_board.arr[i_piece] = 1;
player_arr[player_count] = i_piece;
player_count++;
inputOK = 0;
}
else cout << "此位置已置放棋子,請選擇其它位置........" << endl;
}
else cout << "您輸入的並非1~9其中一個數字,再輸入一次..." << endl;
}while(inputOK);
這是我做的井字遊戲的使用者輸入部份
但是我如果輸入非數字的資料(e.x 英文字母abc之類的)
就會進入無窮迴圈
且會一直顯示您輸入的並非1~9其中一個數字,再輸入一次...
請問問題出在哪裡呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.125.194.29
推
12/23 16:25, , 1F
12/23 16:25, 1F
推
12/23 21:58, , 2F
12/23 21:58, 2F
→
12/23 21:59, , 3F
12/23 21:59, 3F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章
10
15