输入X:
if (0 <= X and X < 49)
output "abc"
else if (50 <= X and X < 70)
output "def"
else if (70 <= X and X < 85)
output "ghi"
else if (85 <= X and X < 100)
output "jkl"
endif
Run Code Online (Sandbox Code Playgroud)
你可以认为它在逻辑上等同于以下内容:
if(a) {
// code
} else {
if(b) {
// code
} else {
// code
}
}
Run Code Online (Sandbox Code Playgroud)
所以在这方面,你可以称之为嵌套.在C和类似的语言中,这正是它的工作原理,因为没有"elseif"语句可用.花括号是可选的,我只是将它们包括在内以使它更清晰.
它们是嵌套的,但格式不同.
您的代码与以下内容相同:
if (0 <= X and X < 49)
output "abc"
else
if (50 <= X and X < 70)
output "def"
else
if (70 <= X and X < 85)
output "ghi"
else
if (85 <= X and X < 100)
output "jkl"
endif
endif
endif
endif
Run Code Online (Sandbox Code Playgroud)
这不是嵌套的:
if (0 <= X and X < 49)
output "abc"
endif
if (50 <= X and X < 70)
output "def"
endif
if (70 <= X and X < 85)
output "ghi"
endif
if (85 <= X and X < 100)
output "jkl"
endif
Run Code Online (Sandbox Code Playgroud)
这在所有具有if语句的语言中都有效(忽略使用{}而不是endif之类的东西)
但是,有些语言有一个实际的"elseif"(或"elif")命令,在这种情况下你不会嵌套,而是写成"else if",你可以假设它只是一个不同格式的嵌套.