C++のswitch文のbreak問題
1048 ワード
今日は筆記試験360で、この簡単だが間違いやすい問題に再び遭遇した.
まず正しい書き方を見てみましょう.
プログラム出力は、012にbreakを加えると、適切なcase実行が見つかった後、次のcaseは実行されず、現在のswitch文を終了するという意味です.
-------------------------------------------------------------------------------------------------------------------------------------------------
合格しやすい点はbreakを入れないとどうなるの?
次のコードを見てください.
プログラム出力は000122
プログラム出力は0012
結論:適切なcaseを見つける前に実行しないで、対応するcaseを見つけた後にすべて実行して、breakあるいはswitch文が終わるまで!
まず正しい書き方を見てみましょう.
int main()
{
int i;
for(i=0;i<3;i++)
{
switch(i)
{ //switch
case 0: // case 0:
cout<
プログラム出力は、012にbreakを加えると、適切なcase実行が見つかった後、次のcaseは実行されず、現在のswitch文を終了するという意味です.
-------------------------------------------------------------------------------------------------------------------------------------------------
合格しやすい点はbreakを入れないとどうなるの?
次のコードを見てください.
int main()
{
int i;
for(i=0;i<3;i++)
{
switch(i)
{
case 0:
cout<
プログラム出力は000122
int main()
{
int i;
for(i=0;i<3;i++)
{
switch(i)
{
case 0:
cout<
プログラム出力は0012
結論:適切なcaseを見つける前に実行しないで、対応するcaseを見つけた後にすべて実行して、breakあるいはswitch文が終わるまで!