㈠ c語言中的switch和default是什麼意思
switch和default是C語言中的關鍵詞,通常聯合使用。
switch語句的語法規則:
其中switch、case、break、default都是關鍵字。switch作為開關,當變數表達式的值對應case中的值時,執行case後面的語句後跳出switch語句,如果都不符合則執行default後面的語句後跳出switch語句。
(1)c語言循環語句switch擴展閱讀:
switch語句規則:
1、switch語句非常有用,但在使用時必須謹慎。所寫的任何switch語句都必須遵循以下規則:
2、只能針對基本數據類型中的整型類型使用switch,這些類型包括int、char等。對於其他類型,則必須使用if語句。
3、switch()的參數類型不能為實型 。
4、case標簽必須是常量表達式(constantExpression),如42或者'4'。
5、case標簽必須是惟一性的表達式;也就是說,不允許兩個case具有相同的值。
㈡ c語言switch語句
樓主好,樓上的哥們好!
樓上的兩位哥們都是直接把x當整型處理的,樓主並沒有說x是整型啊,對不對?
這是我的程序:
#include
<stdio.h>
main()
{
double
x,y;
int
a;
scanf("%lf",&x);
a=(int)x;
/*將x的值強制轉換為整形,也就是截去小數點後面的,賦給a*/
switch(a)
{
case
-4:y=x-1;break;
case
-3:y=x-1;break;
case
-2:y=x-1;break;
case
-1:y=x-1;break;
/*********************
其實上面這一段可以寫成這樣
case
-4:
case
-3:
case
-2:
case
-1:
y=x-1;break;
簡化程序
下邊這段也同理....
***********************/
case
7:y=x+1;break;
case
6:y=x+1;break;
case
5:y=x+1;break;
case
4:y=x+1;break;
case
3:y=x+1;break;
case
2:y=x+1;break;
case
1:y=x+1;break;
case
0:y=x;break;
default:printf("Input
Error\n");goto
loop;
}
printf("x=%lf\ny=%lf\n",x,y);
loop:;
getch();
}
這樣不管你輸入是整數還是浮點數都行啦....
其實一樓的哥們的方法超好啊。如果把int
x,y改成double
x,y就完美了..(這好像不是個問題.....)
程序我測試過了,沒發現問題。(餓只是說餓沒有發現問題,誰發現的問題快點指正!!!)
====================================
lipbb說的很對,上面我寫的程序確實有錯誤....懶得改了.....這是我想的另一個方法:
用switch嵌套,餓測試過了,沒發現問題。(餓只是說餓沒有發現問題,誰發現的問題快點指正!!!)
#include
<stdio.h>
main()
{
double
x,y;
printf("please
input
x\n");
scanf("%lf",&x);
switch(-5<x&&x<0)
{
case
1:y=x-1;break;
case
0:
{
switch(x==0)
{
case
1:y=x;break;
case
0:
{
switch(0<x&&x<8)
{
case
1:y=x+1;break;
case
0:printf("Input
Error\n");goto
loop;
}
}break;
}
}break;
}
printf("x=%lf\ny=%lf",x,y);
loop:;
getch();
}
樓主有不明白的地方可以給我留言。
㈢ c語言如何用switch進行多次輸出
提問者沒有把問題描述清楚。如果這個語句放在循環體中,那麼隨著循環執行多次,它就可以進行多次的輸出。另外如果在多個case中,進行輸出以後,沒有使用break語句進行中斷,那麼它會繼續往下之前下面的後續的輸出語句。
㈣ c語言中switch怎麼用
簡單的說switch語句也是屬於判斷語句,if else語句適合3個以內的判斷,但是多了用if就不太方便了,所以這時3個以上的判斷用switch語句就比較方便了,結構就像樓上的兄弟們那樣寫的,大概怎麼用我舉個例子你就懂了。
例:判斷一周的食譜,就是星期幾的食譜是什麼,首先一個星期7天,那麼判斷七次,用switch語句寫法如下:
#include<stdio.h>
void main()
{
int a;//定義變數用於開辟1到7的數字即一星期的天數。
printf("看看星期幾的食譜是什麼?");
scanf("%d",&a);
switch(a)//開始判斷1-7的食譜。
{
case 1:printf("星期一吃水果 ");
break;//結束語句,判斷這天後提示完就不執行下面的語句了,否則邏輯錯誤。
case 2:printf("星期二吃蔬菜 ");
break;
case 3:printf("星期三吃火鍋 ");
break;
case 4:printf("星期四吃米飯 ");
break;
case 5:printf("星期五吃西餐 ");
break;
case 6:printf("星期六吃米飯 ");
break;
case 7:printf("星期天吃滿漢全席 ");
break;
default:printf("請輸入正確的日期 ");//default語句類似else,如果不輸入1到7的正確日期就顯示這個語句。
break;
}
}
(4)c語言循環語句switch擴展閱讀
if 語句:「如果」語句;if—else 語句:「若…(則)…否則…」語句;switch 語句:「切換」語句;switch—case:「切換—情況」語句。
跳轉結構
return:用在函數體中,返回特定值(如果是void類型,則不返回函數值)。(K&R時期引入)
continue:結束當前循環,開始下一輪循環。(K&R時期引入)
break:跳出當前循環或switch結構。(K&R時期引入)
goto:無條件跳轉語句。(K&R時期引入)
分支結構
if:條件語句,後面不需要放分號。(K&R時期引入)
else:條件語句否定分支(與if連用)。(K&R時期引入)
switch:開關語句(多重分支語句)。(K&R時期引入)
case:開關語句中的分支標記,與switch連用。(K&R時期引入)
default:開關語句中的「其他」分支,可選。(K&R時期引入)
㈤ c語言switch語句是什麼
c語言switch語句是一種多分支選擇語句,在實際應用中,要在多種情況中選擇一種情況,執行某一部分語句。
程序執行時,首先計算表達式的值,與case後面的常量表達式值比較,若相等就執行對應部分的語句塊,執行完後利用break語句跳出switch分支語句。若表達式的值與所有的case後的常量表達式均不匹配,則執行default項對應的語句n,執行後跳出switch分支語句。
case後面的常量表達式只能是整型、字元型或枚舉型常量的一種;各case語句表達式的值各不相同,只起到一個標號作用,用於引導程序找到對應入口。這里的語句塊可以是一條語句,或其它復合語句。語句塊可以不用花括弧「{}」。
各個case語句並不是程序執行的終點,通常需要執行break語句來跳出switch分支語句;若某case語句的語句塊被執行後,若其後沒有break語句,則順序執行其它case語句,直到遇到break語句或後面所有case語句全部執行完,再跳出switch分支語句。
多個case可以共用一組執行語句塊。各個case和default出現的先後次序,並不影響執行結果。
㈥ C語言中的SWITCH是什麼意思
1、SWITCH語句的字面意思是開關,是用來進行多重選擇。具體的用法首先打開C-Free5.0軟體,然後新建一個名為switch.c文件,然後在引入頭文件和main主函數:
㈦ c語言 switch的用法
switch用在編程中,如C語言中它經常跟case一起使用,是一個判斷選擇代碼。其功能就是控制業務流程流轉的。
C語言程序語句switch語句的語法如下(switch,case和default是關鍵字):
switch ( controllingExpression )
{
case constantExpression1 :
case constantExpression2 :
case constantExpression3 :
statements;
//當滿足constantExpression1、constantExpression2、constantExpression3任何一個都執行statements
break;
case constantExpression :
statements ;
break;
...
default :
statements ;
break;
}
(7)c語言循環語句switch擴展閱讀:
Switch在一些計算機語言中是保留字,其作用大多情況下是進行判斷選擇。以C語言來說,switch(開關語句)常和case break default一起使用。
遵守switch語句規則
switch語句非常有用,但在使用時必須謹慎。所寫的任何switch語句都必須遵循以下規則:
只能針對基本數據類型中的整型類型使用switch,這些類型包括int、char等。對於其他類型,則必須使用if語句。
switch()的參數類型不能為實型 。
case標簽必須是常量表達式(constantExpression),如42或者'4'。
case標簽必須是惟一性的表達式;也就是說,不允許兩個case具有相同的值。
㈧ c語言switch語句的用法問題
case(c>=90&&c<=100):
case後面的必須是一個常量。
你這個可以先將成績除以10,再用switch
#include"stdio.h"
voidmain()
{
charc;/*這里別用char,改成:intc,d;*/
scanf("%c",&c);/*這一句也改成scanf("%d",&c);最好前面再加一句,printf("請輸入成績:");在這句後面加一句d=c/10;*/
switch(c)/*然後switch裡面用d來判斷,switch(d)*/
{
case(c>=90&&c<=100):printf("成績的等級為:a.\n");
break;/*改成:case(10):
case(9):printf("成績的等級為:a.\n");break;
case(c>=80&&c<=89):printf("成績的等級為:b.\n");
break;/*改成:case(8):printf("成績的等級為:b.\n");break;
}
}
因為90到100之間的數經過除以10再取整以後就變成了9;100/10等於10,又因為case調用同一個語句的時候允許就在最後一個語句寫上那個語句,而將前面的那幾個省略掉,所以case(10):後面的就省掉了,當然寫上也不會錯。
你的補充的那個,你可以把它分開表示,就像我給你弄的那個case(c>=90&&c<=100):printf("成績的等級為:a.\n");
break;/*改成:case(10):
case(9):printf("成績的等級為:a.\n");break;
雖然有點糾纏不清的感覺,但是希望對解決你的疑問有一定的幫助,呵呵。。。
㈨ C語言中的Switch-case語句
Switch語句可以理解為if-else語句的另一種表現形式 。 break的作用是跳出Switch,如果不跳出則繼續向下執行,直到遇到break或執行到結束為止。
Switch case 語句表達式為:
switch{case 常量1: 語句體1;case 常量2: 語句體2;case 常量3: 語句體3;case 常量4: 語句體4;....default : 語句體;}
(9)c語言循環語句switch擴展閱讀:
Switch在一些計算機語言中是保留字,其作用大多情況下是進行判斷選擇。以C語言來說,switch(開關語句)常和case break default一起使用。
C語言程序語句
Switch用在編程中,如C語言中它經常跟Case一起使用,是一個判斷選擇代碼。其功能就是控制流程流轉的。
直線翻譯:switch語句,即「切換」語句;case即「情況」。
switch語句的語法如下(switch,case,break和default是關鍵字):
switch ( 變數表達式 )
{
case 常量1 :語句;break;
case 常量2 :語句;break;
case 常量3 :語句;break;
...
case 常量n:語句;break;
default :語句;break;
}
網路-switch (計算機語言關鍵字)
㈩ C語言switch語句
switch結構的一般形式是;
switch(表達式)
{
case(必須為常量):語句1;break;
case(同上):語句2;break;
case(同上):語句3;break;
……
……
case(同上):語句n;break;
default:語句n+
其中
break可以不要,但如果你不加,那麼如果執行到沒有加break那一句後不跳出case而繼續執行緊跟其後的case或default