本文和大家重点讨论一下Perl选择性控制结构的概念,Perl选择性控制结构包括if和unless语句,类似于C语言中的if。在Perl中,这些规则有些难以理解。控制表达式的值为空串或0时,则表达式为假,对于其它任何情况,表达式的值都为真。
Perl选择性控制结构
选择性控制结构包括if和unless语句,类似于C语言中的if。
首先介绍一下真和假的定义。在Perl中,这些规则有些难以理解。控制表达式的值为空串或0时,则表达式为假,对于其它任何情况,表达式的值都为真。
注意:"00"不是空串或0,值为真。"0.0"也是如此。
指令:if假如
语法一:
if(判别运算式)
{
表达式为真时的语句块;
}
上个语法在Perl中也可以写成:表达式为真时的语句块if(判别运算式);
范例:
- print"请输入您的分数?\n";
- $scorre=<STDIN>;#<STDIN>代表标准输入,会让使用者输入一字符串
- chop($score);#将$score***一个换行字符\n删除掉
- if($score>=60){
- print"您的分数及格了!\n";
- }
也可以写成:print"您的分数及格了!\n"if($score>=60);
语法二:
if(判别运算式一){
判别式一为真时的语句块;
}else{
判别式一为假时的语句块;
}
范例:
- print"请输入您的分数?\n";
- $scorre=<STDIN>;
- chop($score);
- if($score>=60)
- {
- print"您的分数及格了!\n";
- }
- else{
- print"您的分数不及格!\n";
- }
语法三:
if(判别运算式一)
{
判别式一为真时的语句块;
}elsif(判别运算式二){
判别式二为真时的语句块;
}elsif(判别运算式三){
判别式三为真时的语句块;
}else{
所有判别式为假时的语句块;
}
范例:
- print"请输入您的分数?\n";
- $scorre=<STDIN>;
- chop($score);
- if($score>60)
- {
- print"您的分数大于60分!\n";
- }
- elsif($score<60){
- print"您的分数小于60分!\n":
- }
- else{
- print"您的分数刚好是60分!\n";
- }
#p#
指令:unless假如非
unless的含义就是说“如果判别式不为真,就执行...”。
语法一:
unless(判别运算式){
判别式为假时语句块;
}
上个语法在Perl中也可以写成:判别式为假时语句块unless(判别运算式);
范例:
- print"请输入您的分数?\n";
- $scorre=<STDIN>;#<STDIN>代表标准输入,会让使用者输入一字符串
- chop($score);#将$score***一个换行字符\n删除掉
- unless($score<60)
- {
- print"您的分数及格了!\n";
- }
也可以写成:print"您的分数及格了!\n"unless($score<60);
语法二:
unless(判别运算式)
{
判别式为假时语句块;
}else{
判别式为真时语句块;
}
范例:
- print"请输入您的分数?\n";
- $scorre=<STDIN>;
- chop($score);
- unless($score<60)
- {
- print"您的分数及格了!\n";
- }
- else{
- print"您的分数不及格!\n";
- }
【编辑推荐】
- Perl基础 Perl复杂数据结构
- Perl print命令使用时遇到的两个问题
- 使用 Perl 增强 Twitter 实用性
- 揭秘Perl变量中Perl纯变量用法
- Perl变量中Perl数组概念详解