📅  最后修改于: 2020-10-16 06:26:05             🧑  作者: Mango
决策结构要求程序员指定一个或多个要由程序评估或测试的条件,以及确定条件为真的情况下要执行的一条或多条语句,如果条件确定,则还可以指定要执行的其他语句确定为假。
以下是大多数编程语言中常见的典型决策结构的一般形式-
Tcl语言在内部使用expr命令,因此我们不需要显式使用expr语句。
Tcl语言提供以下类型的决策声明-
Sr.No. | Statement & Description |
---|---|
1 | if statement
An ‘if’ statement consists of a Boolean expression followed by one or more statements. |
2 | if…else statement
An ‘if’ statement can be followed by an optional ‘else’ statement, which executes when the Boolean expression is false. |
3 | nested if statements
You can use one ‘if’ or ‘else if’ statement inside another ‘if’ or ‘else if’ statement(s). |
4 | switch statement
A switch statement allows a variable to be tested for equality against a list of values. |
5 | nested switch statements
You can use one switch statement inside another switch statement(s). |
我们已经涵盖了条件运算符? :在上一章中,可用于替换if … else语句。它具有以下一般形式-
Exp1 ? Exp2 : Exp3;
其中Exp1,Exp2和Exp3是表达式。注意冒号的使用和放置。
‘?的值表达式”的确定如下:计算Exp1。如果为true,则对Exp2进行评估,并成为整个’?表达。’如果Exp1为false,则计算Exp3,其值成为表达式的值。一个例子如下所示。
#!/usr/bin/tclsh
set a 10;
set b [expr $a == 1 ? 20: 30]
puts "Value of b is $b\n"
set b [expr $a == 10 ? 20: 30]
puts "Value of b is $b\n"
当您编译并执行上述程序时,它将产生以下结果-
Value of b is 30
Value of b is 20