系统粉 > 电脑问答 > 其他问答

已解决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
相关问答
最新其他问答
解决方法