Switch case 語句怎么使用
switch的用法是判斷case后面的表達式和switch后面的表達式是否相匹配,一旦case匹配,就會順序執行后面的程序代碼,而不管后面的case是否匹配,直到遇見break。
Switch case 語句表達式為: switch{case 常量1: 語句體1;case 常量2: 語句體2;case 常量3: 語句體3;case 常量4: 語句體4;。.default : 語句體;} 當常量表達式所表達的量與其中一個case語句中的常量相符時,就執行此case語句后面的語句,并依次下去執行后面所有case語句中的語句,除非遇到break;語句跳出switch語句為止。
如果常量表達式的量與所有case語句的常量都不相符,就執行default語句中的語句并跳出switch語句。 擴展資料 switch 。
case語句的特點: 1、把要討論的表達式與case后面的常量進行比較,發現匹配項之后,從該位置入口,做它下面的所有語句。 2、case 后面的常量不能重復 3、可以在每一個case語句的后面加上break語句,這樣就能保證只做與之相匹配的那一項。
4、break實質:在switch 。case語句里面最先遇到那一個break就從該位置結束該語句 5、可以在最后一個case的下面加上default語句表示如果找不到匹配項時,就做default對應的項。
6、default并不是一定要有,如果前面遇到break,default就不執行。如果沒有遇到break,就一定會執行。
7、case后面的語句可以不執行,表示與下一個case是或的關系。 參考資料來源:百度百科——switch。
switch語句怎么用
switch語句的語法如下(switch,case和default是關鍵字):
switch ( 表達式)
{
case 常量表達式1 :語句1;break;
case 常量表達式2 :語句2;break;
……
case 常量表達式n :語句n;break;
default:語句n+1;break;
}
說明:
break退出{ }
case后面只能跟一個值(加冒號:),而不能是一個表達式
switch(表達式) 后面沒有;(分號)
{}前后沒有;(分號)
switch語句規則
case標簽必須是常量表達式(constant Expression)
只能針對基本數據類型使用switch,這些類型包括int、char等。對于其他類型,則必須使用if語句。
case標簽必須是惟一性的表達式;也就是說,不允許兩個case具有相同的值。
不要問為什么,C就這規定!我們只需要了解規則,學會應用即可!
猜想原因:浮點型數據不是準確的數據,在機器中只能表示出一個近似值,如:0.1 在機器中存的是0.09999612。. 也可能是0.09999723。. 根據精度不同,數據來源不同,其值是個不確定的數據,因此,不能用CASE來定位
switch語句怎么用啊
在C語言中,switch語句是開關語句,一般與case、break、default配合使用,對流程進行控制。
switch語句的語法規則: switch ( 變量表達式 ) { case 常量1 :語句;break; case 常量2 :語句;break; case 常量3 :語句;break; 。 case 常量n:語句;break; default :語句;break; } 其中switch、case、break、default都是關鍵詞。
switch作為一個開關,當變量表達式的值對應case中的值時,執行case后面的語句后跳出switch語句,如果都不符合則執行default后面的語句后跳出switch語句。 使用舉例:判斷分數等級,程序如下。
擴展資料: switch語句規則: 1、switch語句非常有用,但在使用時必須謹慎。所寫的任何switch語句都必須遵循以下規則: 2、只能針對基本數據類型中的整型類型使用switch,這些類型包括int、char等。
對于其他類型,則必須使用if語句。 3、switch()的參數類型不能為實型 。
4、case標簽必須是常量表達式(constantExpression),如42或者'4'。 5、case標簽必須是惟一性的表達式;也就是說,不允許兩個case具有相同的值。
參考資料來源:百度百科-switch(計算機語言關鍵詞)。
switch語句的用法
語法:switch(val){case x: //程序段1 break;case y: //程序段2 break;case z: //程序段3 break;default: //程序段4}首先,程序會用val的值與 x,y,z的值進行比較,如果等于其中某一個值,則程序跳轉至該case執行程序,執行完后退出switch語句。
例如等于x,則程序跳轉到程序段2,然后退出switch。如果所有的case值都不相等,則執行default中的程序,例如上面的程序段4.說明1:val的值應該為整數,case語句的個數可以很多,上面的x,y,z的值也是由你設定,但一定是一個常量說明2:case語句里邊的break別忘了,否則執行完該程序段后,會繼續往下執行。
switch語句怎么用啊 具體
switch語句的用法詳解 C語言還提供了另一種用于多分支選擇的switch語句, 其一般形式為:switch(表達式){ case常量表達式1: 語句1; case常量表達式2: 語句2; … case常量表達式n: 語句n; default:語句n+1;} 其語義是:計算表達式的值。
并逐個與其后的常量表達式值相比較,當表達式的值與某個常量表達式的值相等時, 即執行其后的語句,然后不再進行判斷,繼續執行后面所有case后的語句。如表達式的值與所有case后的常量表達式均不相同時,則執行default后的語句。
main() { int a; printf("input integer number: "); scanf("%d",&a); switch (a) { case 1:printf("Monday\n"); case 2:printf("Tuesday\n"); case 3:printf("Wednesday\n"); case 4:printf("Thursday\n"); case 5:printf("Friday\n"); case 6:printf("Saturday\n"); case 7:printf("Sunday\n"); default:printf("error\n"); } } 本程序是要求輸入一個數字,輸出一個英文單詞。但是當輸入4之后,卻執行了case4以及以后的所有語句,輸出了Wednesday及以后的所有單詞。
這當然是不希望的。為什么會出現這種情況呢?這恰恰反應了switch語句的一個特點。
在switch語句中,“case 常量表達式”只相當于一個語句標號, 表達式的值和某標號相等則轉向該標號執行,但不能在執行完該標號的語句后自動跳出整個switch 語句,所以出現了繼續執行所有后面case語句的情況。這是與前面介紹的if語句完全不同的,應特別注意。
為了避免上述情況,C語言還提供了一種break語句,專用于跳出switch語句,break 語句只有關鍵字break,沒有參數。在后面還將詳細介紹。
修改例題的程序,在每一case語句之后增加break 語句, 使每一次執行之后均可跳出switch語句,從而避免輸出不應有的結果。 switch 的分支語句一共有 n+1 種,而我們通常希望的都是選擇其中的一個分支來執行,執行完后就結束整個 switch 語句,而繼續執行 switch后面的語句,此時就可以通過在每個分支后加上 break 語句來實現了。
如下:switch (表達式) { case 常量表達式1: 語句1; break; case 常量表達式2: 語句2; break;。
case 常量表達式n: 語句n; break; default: 語句n+1; break; } 加了這個 break 語句后,一旦“常量表達式 x”與“表達式”的值相等了,那么就執行“語句 x”,執行完畢后,由于有了 break 則直接跳出 switch 語句,繼續執行 switch 語句后面的程序了,這樣就可以避免執行不必要的語句。把上面改成下面 main() { int a; printf("input integer number: "); scanf("%d",&a); switch (a) { case 1:printf("Monday\n");break; case 2:printf("Tuesday\n"); break; case 3:printf("Wednesday\n");break; case 4:printf("Thursday\n");break; case 5:printf("Friday\n");break; case 6:printf("Saturday\n");break; case 7:printf("Sunday\n");break; default:printf("error\n"); } } 在使用switch語句時還應注意以下幾點: 在case后的各常量表達式的值不能相同,否則會出現錯誤。
在case后,允許有多個語句,可以不用{}括起來。 各case和default子句的先后順序可以變動,而不會影響程序執行結果。
default子句可以省略不用。
switch語句的用法
語法:
switch(val)
{
case x:
//程序段1
break;
case y:
//程序段2
break;
case z:
//程序段3
break;
default:
//程序段4
}
首先,程序會用val的值與 x,y,z的值進行比較,如果等于其中某一個值,則程序跳轉至該case執行程序,執行完后退出switch語句。例如等于x,則程序跳轉到程序段2,然后退出switch。如果所有的case值都不相等,則執行default中的程序,例如上面的程序段4.
說明1:val的值應該為整數,case語句的個數可以很多,上面的x,y,z的值也是由你設定,但一定是一個常量
說明2:case語句里邊的break別忘了,否則執行完該程序段后,會繼續往下執行
求一個switch語句的例子
隨便寫了一個,輸入月份,判斷天數。
語句中有注釋。 #include
case 1: cout<<"1月有31天";break; case 2: cout<<"2月有28天";break; case 3: cout<<"3月有31天";break; case 4: cout<<"4月有30天";break; case 5: cout<<"5月有31天";break; case 6: cout<<"6月有30天";break; case 7: cout<<"7月有31天";break; case 8: cout<<"8月有31天";break; case 9: cout<<"9月有30天";break; case 10: cout<<"10月有31天";break; case 11: cout<<"11月有30天";break; case 12: cout<<"12月有31天";break; default: cout<<"輸入錯誤!!!"< switch (表達式或屬性){ case 值1 : 語句1 break; case 值2 : 語句2 break; 。 default : 值n break; } 從表達式或屬性值等于某個case語句后的值開始,它下方的所有語句都會一直運行,直到遇到一個break為止。隨后,switch語句將結束,程序從switch結束大括號之后的第一個語句繼續執行,并忽略其他case。 假如任何一個case語句的值都不等于表達式或屬性的值,就運行可選標簽default之下的語句。 假如表達式或屬性的值和任何一個case標簽都不匹配,同時沒有發現一個default標簽,程序會跳過整個switch語句,從它的結束大括號之后的第一個語句繼續執行。 請問c語言中switch語句究竟是怎么用啊