係統粉 > 電腦問答 > 其他問答

已解決switch多分支選擇語句不支持關係、邏輯運算符嗎?

提問者:農村—小孩  |  瀏覽次  |  提問時間:2017-02-15  |  回答數量:5

switch多分支選擇語句不支持關係、邏輯運算符嗎? #include <stdio.h>void main(){ float p,w,d,f; int s; printf(\"Please input p,w,s:\"); scanf(\"%f,%f,%d\",&p,&w,&s); switch (s) {  case (s<250): d=0; break;  case (s >= 250 && s < 500): d=2; break;  case (s >= 500 && s < 1000): d=5; break;  case (s >= 1000 && s < 2000): d=8; break;  case (s >= 2000 && s < 3000): d=10; break;  default: d=15; } f=p*w*s*(1-d/100.0); printf(\"freight=%15.4f\\n\",f);}  這是根據譚浩強《C程序設計》(第三版)P11

已有5條答案
極差極差4

極差極差4

回答數:80  |  被采納數:4

像你這樣寫直接把case替換成if
2017-02-15 07:54:04
讚 8
remember445

remember445

回答數:2  |  被采納數:93

所以不甘心隻會用一種方法來寫。
  譚的教材雖然也是用switch寫的,但它程序裏:case後麵是i=s/250這樣的形式。

  隻是想知道,自己這樣寫,到底是否行不行得通?!!
2017-02-15 07:28:14
讚 0
玉玨胭尊

玉玨胭尊

回答數:217  |  被采納數:13

直接if語句,賦值也不行
2017-02-15 07:13:35
讚 21
半城傷華

半城傷華

回答數:100  |  被采納數:114

case後麵貌似隻能是 整型常量吧

PS:不過LZ的嚐試精神值得學習
2017-02-15 06:34:28
讚 10
id已刪除大本營

id已刪除大本營

回答數:34  |  被采納數:140

4樓的回答比較明確!
  請版主酌情加分!!

  謝謝各位!
2017-02-15 08:03:44
讚 3
相關問答
最新其他問答
解決方法