亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么輸出q跳不出循環?

為什么輸出q跳不出循環?

海綿寶寶撒 2022-06-01 11:07:38
#include<iostream>using namespace std;int main(){char number;for(;;){cout<<"請輸入一個數字(1-3之間),輸入q退出。"<<endl;cin>>number;switch(number){case '1':cout<<"你輸入的是1!\n";continue;case '2':cout<<"你輸入的是2!\n";continue;case '3':cout<<"你輸入的是3!\n";continue;case 'q':break;case 'Q':break;default:cout<<"你輸入的不是1-3的數字!"<<endl;}}cout<<"程序結束,再見。"<<endl;return 0;}
查看完整描述

3 回答

?
莫回無

TA貢獻1865條經驗 獲得超7個贊

你只要在switch和for循環之間加多一句break就OK了,即
switch(number)
{
case '1':cout<<"你輸入的是1!\n";
continue;
case '2':cout<<"你輸入的是2!\n";
continue;
case '3':cout<<"你輸入的是3!\n";
continue;
case 'q':break;
case 'Q':break;//這個的作用是跳出switch
default:cout<<"你輸入的不是1-3的數字!"<<endl;
}
break;//這個的作用是跳出循環
}
cout<<"程序結束,再見。"<<endl;
return 0;
}


查看完整回答
反對 回復 2022-06-06
?
慕桂英4014372

TA貢獻1871條經驗 獲得超13個贊

你的輸入Q或q以后,是跳出了switch這個結構,可是還在for循環中,仍會進行下一次循環。
把輸入q或Q跳出for循環就結束了。
可以將代碼改為(經過vc6.0調試):
#include<iostream>
using namespace std;
int main()
{
char number;
for(;;)
{
cout<<"請輸入一個數字(1-3之間),輸入q退出。"<<endl;
cin>>number;
switch(number)
{
case '1':cout<<"你輸入的是1!\n";
continue;
case '2':cout<<"你輸入的是2!\n";
continue;
case '3':cout<<"你輸入的是3!\n";
continue;
case 'q':goto loop;
case 'Q':goto loop;
default:cout<<"你輸入的不是1-3的數字!"<<endl;
}
}
loop:
cout<<"程序結束,再見。"<<endl;
return 0;
}
//===================================================================

//此時就可以完成程序的目的。
//以上僅供參考,如有不足,請高手指出不足之處。
//===================================================================


查看完整回答
反對 回復 2022-06-06
?
慕仙森

TA貢獻1827條經驗 獲得超8個贊

break;跳出switch ;和循環沒關系吧,而且continue沒必要,直接用break就行,
一般情況下一個case對應一break語句

查看完整回答
反對 回復 2022-06-06
  • 3 回答
  • 0 關注
  • 185 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號