好了 我把原題改成一個心理測驗了,
輸入數字可以解決我剛剛的問題
但是我輸入文字(英文字,中文字等)會變成無窮迴圈
程式如下,有沒有好方法可以解決的呢?感恩
#include <iostream>
using namespace std;
int main()
{
double res;
cout << "如果你一個人在房間裏面睡覺,你的房間沒有鎖,房間門被打開,你的直覺
是誰進來了? \n";
cout << "1 你爸或你媽 \n" ;
cout << "2 你的寵物,如小狗小貓 \n";
cout << "3 你的情人 \n" ;
cout << "4 沒人進來,只是被風吹開 \n";
cout << "5 小偷 \n" ;
cout << "\n" ;
cout << "請輸入1~5:\n";
cin >> res;
for(int i=0 ; i<2 ; i++){
if (res == 1){
cout << "選擇1:變心指數為55%。當你發現對方說謊欺騙你,你就會生氣變心。
這類型的人在愛情的性格上非常坦誠,在交往時會百分百地信任對方。如果發現對方竟然
欺騙自己,這時候就會非常生氣而變心。\n";
i=2;}
else if(res == 2){
cout << "選擇2:只要讓你愛上了,一輩子都很難變心。變心指數20%。這類型的
人不會很輕易地愛上一個人,如果真的深深愛上一個人時,會愛得執迷不悟。\n";
i=2;}
else if(res == 3){
cout << "選擇3:變心機率很低,除非是對方先變心提出分手。變心指數40%。這
類型的人在個性上很怕失去的感覺,因此對方做任何事情你都可以包容,絕不會輕易主動
提出分手或變心。\n";
i=2;}
else if(res == 4){
cout << "選擇4:當夢中情人出現,你就會對舊愛變心。這類型的人,對愛情有企
圖心,對目前的對象不是很滿意,會追求更好的情人。\n" ;
i=2;}
else if(res == 5){
cout << "選擇5:變心速度超快的你,只要感覺不對說變心就變心。這類型的人喜
歡跟著感覺走,只要對方一個眼神不對,或是講了句話讓他(她)不爽,他(她)就會想
分手。\n" ;
i=2;}
else{
cout << "請輸入1~5:\n";
cin >> res;
i=0;
}
}
system("pause") ;
return 0;
}
作者: study031 (新手) 看板: C_and_CPP
標題: [問題] if else 問題
時間: Sat Oct 3 17:35:17 2009
如果我設一個if else判斷式,程式如下,如果我打一個非1跟2的整數他會直接跳到最後面
的else上,我該如何打他又能回到一開始的狀態呢?
藍色部分是如果我這樣打他到執行第二次時不管輸入什麼值都會結束
要怎麼打他才能回到一開始的狀態呢?感恩
#include <iostream>
using namespace std;
int main()
{
int res;
cout << "請輸入1或2:\n";
cin >> res;
if (res == 1){
cout << "輸入的是1。\n";
}
else if(res == 2){
cout << "輸入的是2。\n";
}
else{
cout <<"請輸入1或2:\n";
cin >> res;
}
system("pause") ;
return 0;
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.153.81
推
10/03 17:35, , 1F
10/03 17:35, 1F
→
10/03 17:44, , 2F
10/03 17:44, 2F
※ 編輯: study031 來自: 140.113.153.81 (10/03 18:54)
※ 編輯: study031 來自: 140.113.153.81 (10/03 18:57)
推
10/03 19:08, , 3F
10/03 19:08, 3F
→
10/03 19:08, , 4F
10/03 19:08, 4F
→
10/03 19:43, , 5F
10/03 19:43, 5F
推
10/03 21:16, , 6F
10/03 21:16, 6F
→
10/03 22:04, , 7F
10/03 22:04, 7F
討論串 (同標題文章)
完整討論串 (本文為第 1 之 2 篇):
問題
3
7