鱼C论坛

 找回密码
 立即注册
查看: 1143|回复: 0

[技术交流] 关于select的奇技淫巧

[复制链接]
发表于 2020-11-20 13:00:08 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 尛善领主 于 2020-11-20 18:51 编辑
Hello!这一次我自己将开启一个新系列-----关于C语言的奇技淫巧(doge)

此系列需要一定基础,慎重观看



目前为止到blog发布前(20号)学C不到5天。
如果有错误请见谅 .


此系列blog非经允许禁止转载!!!
(自己可能会转载到另外的论坛)
(首发会在fishc上)

关于C的select case在定义上只能使用常量,但仍然有一种方法可以改为使用变量
这么做的好处是什么?
①select case的语句本身就比if更加强大,是一种附加了goto的if语句。
②更加美观,直观上更容易阅读
缺点
①处理麻烦
②如果用到goto的性质不易阅读
③只涉及两个分支还是建议用if,如果多个分支建议用select
方法
利用条件表达式,将一整个变化量变成离散量
比如
(伪代码)
输入a
cat=(a>50) +2*(a>0 &&a<=50)+3*(a<=0)
select (cat)
case 1
    a>50时的操作
case 2
    a在0~50的操作
case 3
    a<=0的操作

虽然说这种跳转性的语句会破坏结构,但我觉得也未必不可以使用
这样子可以一目了然的解决,
代码简洁阅读方便





想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-12 13:47

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表