中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-07-14 05:53
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 多重if判断 VS 逻辑关系运算 查看 1,055 回复 0
楼 主 多重if判断 VS 逻辑关系运算 发表于 2008-03-09 06:54 ·  中国 陕西 西安 电信
银牌会员
★★★★
钻石会员
积分 2,278
发帖 1,020
注册 2007-11-19 13:34
18年会员
UID 103127
性别 男
状态 离线
没事整事,用if多重判断来模拟逻辑关系运算符||,&&,(高级语言里的)

欢迎提出严重批评!

一,对某个x, 若a或b或c或...或z真,就执行A(逻辑或)(if ax||bx||cx||...||zx command A)
if x-->a真 (command A)
if x-->b真 (command A)
...
if x-->z真 (command A)

转换为:
for %a in (a b ... z) do if x-->%a 真 (command A)


二,对某个x,若有a,b,c...z都真,那么执行命令A(逻辑且)(if ax && bx && cx && ... && zx command A)
if x-->a真 if x-->b真 ... if x-->z真 (command A)

转换为:
set a=0
for %a in (a b ... z) do if x-->%a 真 (set/a a+=1)
if a==26 command A



练习一下:
对某个x,若对a,b,c,d都真,对e或f或...或z假那么执行command A
转换为:
set a=0
for %a in (a b c d) do if x-->%a 真 (set/a a+=1)
if a==4 (
for %a in (e f ... z) do if x-->%a 假 (command A)
)
山外有山,人外有人;低调做人,努力做事。

进入网盘(各种工具)~~ 空间~~cmd学习
论坛跳转: