c語言中case的意思和用法
*
case 是開關語句的一個組成部分。
*
case的用法:
switch (整型表達式)
{
case 1:... ?;
case 2: ... ?;
...
default: ...break;
}
C語言中switch case語句的問題
# include void main() { int I, k, a, b, c, d, e, f,g; printf("請輸入利潤I:\n"); scanf("%d", &I); a = I * (1.0f/10); //此處強製為浮點類型,不然a一直是0,看你的意思了 b = (I - 100000) * 75/1000; c = (I - 200000) * 5/100; d = (I - 400000) * 3/100; e = (I - 600000) * 15/1000; f = (I - 1000000) * 1/100; g = (I - 1) / 100000; switch(g) { case 0: printf("獎金總數k=%d\n", a); break; case 1: printf("獎金總數k=%d\n", a + b); break; case 2: case 3: printf("獎金總數k=%d\n", a + b + c); break; case 4: case 5: printf("獎金總數k=%d\n", a + b + c + d); break; case 6: case 7: case 8: case 9: printf("獎金總數k=%d\n", a + b + c + d + e); break; default : printf("獎金總數k=%d\n", a + b + c + d + e + f); break; } 望采納~ case是用於開關語句中的關鍵字。開關語句,又稱switch語句,由關鍵字switch搭配若幹個case及可能存在的default語句,共同組建成的一種分支結構語句。 拓展資料: default語句可以省略。在switch語句中,如果執行到break;語句,而break語句不在任何循環體內,那麼會跳出switch語句。 一鍵還原類軟件的備份文件。使用Ghost Explorer軟件打開,可以查看該文件的內容。此文件不可刪除!刪除了以後就無法恢複係統了。 先幹掉備份文件,在c_pan.gho文件上右鍵,按住"Shift"鍵點刪除就可以了,然後用Windows優化大師清理臨時文件和注冊表,清理完成後重新啟動即可;如果備份文件刪除麻煩,可用優化大師自行搜索可卸載的信息,卸載後如上清理即可。 c語言中 switch語句其實每個case都會判斷的,所以要用break跳出 有時候兩個不同的case需要做相同的處理 例如case10 case 9都是優秀 那麼 case10: 之後不寫任何語句,也不寫break 那麼也會運行緊跟著的case 9:後麵的語句,顯示優秀 就應為用這樣的極值,所以在正常的case情況運行完後,要記得加break 而在多個case有共同操作的時候,可以把他們寫在一起中間都不用break 最後隻用寫一次共同操作的代碼,一個break switch(k) { case?1: case?4: case?7:?s++;break;?//?當k的值為1,4,7時,執行?s++,跳出switch case?2: case?3: case?6:break;?//?當k的值為2,3,6時,跳出switch case?0: case?5:s+=2;break;?//當k的值為0,5時,執行?s+=2,?跳出switch } switch中的break作用是跳出switch塊。 switch(val){ case?v1: ... //?如果這裏有break,則跳出switch,否則,繼續執行下一個case中的代碼。 case?v2: .... break; } switch的用法是判斷case後麵的表達式和switch後麵的表達式是否相匹配,一旦case匹配,就會順序執行後麵的程序代碼,而不管後麵的case是否匹配,直到遇見break。 switch語句的語法如下(case、default和break是其配套關鍵字): switch?(?表達式) { case?常量表達式1: 語句1;?????????可以是多行,可以加括號,也可以不加,到下一個case之前,都是本case的語句範圍 [break;]???????中括號,表示此語句可以沒有 case?常量表達式2: 語句2; [break;] …… case?常量表達式n: 語句n; [break;] [default:] 語句n+1; [break;] } 說明: * break ?表示退出{ } * case後麵隻能跟一個值(加冒號:),而不能是一個表達式 * switch(表達式) 後麵沒有分號(;) * {}前後沒有分號(;) * default語句可以出現在任何位置,但建議寫到最後,表示除去case匹配之外的其它情況。也可以沒有default語句 switch語句規則: * case標簽必須是常量表達式(constant Expression) 隻能針對基本數據類型使用switch,這些類型包括int、char等。對於其他類型,則必須使用if語句。 * case標簽必須是惟一性的表達式;也就是說,不允許兩個case具有相同的值。 * 如果兩個case語句間沒有break,則執行完匹配的case語句後,會順序執行下麵的語句,直到遇到break語句或switch結束 * 連續的兩個case語句表示,這兩個case是同一種情況 不能,case後麵是常量表達式 -------------------------------------------------------------------------------- switch(表達式) { case 常量表達式1: 語句1; break; case 常量表達式2: 語句2; break; …… case 常量表達式n: 語句n; break; default: 語句n+1; break; } -------------------------------------------------------------------------------- switch語句的執行流程是:首先計算switch後麵圓括號中表達式的值,然後用此值依次與各個case的常量表達式比較,若圓括號中表達式的值與某個case後麵的常量表達式的值相等,就執行此case後麵的語句,執行後遇break語句就退出switch語句;若圓括號中表達式的值與所有case後麵的常量表達式都不等,則執行default後麵的語句n+1 這裏 a>0 表示一個布爾運算,其值要麼為真要麼為假。 在C語言中,一般將真轉換成整數1,假轉換成整數0. 所以 a>0的結果有 0 和 1兩種情況。 switch 圓括號中可以是能夠轉換成整型的表達式,例如,常見的 整數int,字符型char等。 case 1: case 'A': 這兩種是比較常見的格式。 另外,虛機團上產品團購,超級便宜 首先,你的程序有問題!printf後麵沒有那個冒號。 #include int main() { int k; scanf("%d",&k); switch(k) { case 1:printf("%d\n",k++); case 2:printf("%d\n",k++); case 3:printf("%d\n",k++); case 4:printf("%d\n",k++); break; default:printf("FULL!\n"); } return 0; } /////////////輸入1 輸出: 1 2 3 4 進入case 1,輸出1 k變成2,進入case 2,輸出2 k變成3,進入case 3,輸出3 k變成4,進入case 4,輸出4 遇到break,退出switch。 輸入3過程是一樣的,隻是從case 3開始,輸出: 3 4 37 A case後麵不能跟浮點數,同時,case和數值之間需要由空格。 B case後麵沒有空格。同時 不能用逗號表達式。 C case 1+2不正確,必須是常量,不能是表達式。 D這個是正確的 選D 38 A x= y+ 什麼的 和輸入完全沒關係。直接錯誤。 B %d %d輸入x和y沒問題。 但直接a=getchar,a會賦值為\n,所以不正確。 C%d%d輸入x和y. 後續三個%c,會a=\n b='A' c=' ' 不正確。 D %d%d輸入x和y,然後a='\n' a='A' b=' ' b='B' c=' ' c='C' 最終值,是正確的 選D 轉載請注明出處句子大全網 » c語言中case的意思和用法c語言中case是什麼意思
C語言中用switch語句的時候,為什麼有些case後麵沒有語句的,如case10: case9:printf("優秀");
C語言switch語句,求大神解釋一下,謝謝
C語言中的Switch-case語句
C語言中switch中的case後麵可以加判斷語句嗎
c語言中switch語句case選項中如果有多條語句用不用打括號?
C語言switch語句例題
C語言多分支正確語句CASE