LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1604|回复: 11

关于一个循环语句例句的疑问

[复制链接]
发表于 2010-2-26 19:51:52 | 显示全部楼层 |阅读模式
刚开始看shell脚本,以前也没学过编程,今天但到一个例子有点卡住了,不知道做和解
while [ "$yn" != "YES" ] && [ "$yn" != "yes" ]
do
        read -p "lease input yes/YES to stop this program:" yn
done

为什么这个条件这里要用&&,而不是||?
按照正常理解思维,应该是满足其中一个值,就退出循环。
但是用&&不就表示两个条件都要达成才能退出循环?
发表于 2010-2-26 20:21:32 | 显示全部楼层
你的数学没学好,鉴定完毕。
回复 支持 反对

使用道具 举报

发表于 2010-2-26 21:08:23 | 显示全部楼层
这个....
逻辑很清晰啊?
回复 支持 反对

使用道具 举报

发表于 2010-2-26 21:16:11 | 显示全部楼层
Post by leati;2071967
刚开始看shell脚本,以前也没学过编程,今天但到一个例子有点卡住了,不知道做和解
while [ "$yn" != "YES" ] && [ "$yn" != "yes" ]
do
        read -p "lease input yes/YES to stop this program:" yn
done
为什么这个条件这里要用&&,而不是||?
按照正常理解思维,应该是满足其中一个值,就退出循环。
但是用&&不就表示两个条件都要达成才能退出循环?



建议回去看看数学书。。。
回复 支持 反对

使用道具 举报

发表于 2010-2-27 03:13:27 | 显示全部楼层
Post by leati;2071967

按照正常理解思维,应该是满足其中一个值,就退出循环。
你搞反了,while 语句是“条件满足,_不_退出循环”,不满足,才退出
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-2-27 18:25:02 | 显示全部楼层
Post by biinn;2072022
你搞反了,while 语句是“条件满足,_不_退出循环”,不满足,才退出


谢谢五楼的提醒,现在明白了,犯糊涂了!!

也请二楼四楼说话请注意点,我是在好好的请教问题,你要知道你可以告诉我,也可以不告诉我,但犯不着在这里说风凉话,谁都有犯错的时候,你们哪天要是写了错字,别人叫你去学习下小学语文,请问你们作何感想?
回复 支持 反对

使用道具 举报

发表于 2010-2-28 13:32:08 | 显示全部楼层
那么学一下数理逻辑,这个是大学课程...
回复 支持 反对

使用道具 举报

发表于 2010-3-2 14:51:07 | 显示全部楼层
和while对应的是until。一个提醒啊。
until [  ] ;
do
   ...
done
回复 支持 反对

使用道具 举报

发表于 2010-3-9 13:35:42 | 显示全部楼层
是不等于,而不是等于。
回复 支持 反对

使用道具 举报

发表于 2010-3-16 22:48:43 | 显示全部楼层
你逻辑出问题了
回复 支持 反对

使用道具 举报

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

本版积分规则

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