解析Perl選擇性控制結(jié)構(gòu)的兩大指令
本文和大家重點討論一下Perl選擇性控制結(jié)構(gòu)的概念,Perl選擇性控制結(jié)構(gòu)包括if和unless語句,類似于C語言中的if。在Perl中,這些規(guī)則有些難以理解??刂票磉_式的值為空串或0時,則表達式為假,對于其它任何情況,表達式的值都為真。
Perl選擇性控制結(jié)構(gòu)
選擇性控制結(jié)構(gòu)包括if和unless語句,類似于C語言中的if。
首先介紹一下真和假的定義。在Perl中,這些規(guī)則有些難以理解??刂票磉_式的值為空串或0時,則表達式為假,對于其它任何情況,表達式的值都為真。
注意:"00"不是空串或0,值為真。"0.0"也是如此。
指令:if假如
語法一:
if(判別運算式)
{
表達式為真時的語句塊;
}
上個語法在Perl中也可以寫成:表達式為真時的語句塊if(判別運算式);
范例:
- print"請輸入您的分數(shù)?\n";
- $scorre=<STDIN>;#<STDIN>代表標準輸入,會讓使用者輸入一字符串
- chop($score);#將$score***一個換行字符\n刪除掉
- if($score>=60){
- print"您的分數(shù)及格了!\n";
- }
也可以寫成:print"您的分數(shù)及格了!\n"if($score>=60);
語法二:
if(判別運算式一){
判別式一為真時的語句塊;
}else{
判別式一為假時的語句塊;
}
范例:
- print"請輸入您的分數(shù)?\n";
- $scorre=<STDIN>;
- chop($score);
- if($score>=60)
- {
- print"您的分數(shù)及格了!\n";
- }
- else{
- print"您的分數(shù)不及格!\n";
- }
語法三:
if(判別運算式一)
{
判別式一為真時的語句塊;
}elsif(判別運算式二){
判別式二為真時的語句塊;
}elsif(判別運算式三){
判別式三為真時的語句塊;
}else{
所有判別式為假時的語句塊;
}
范例:
- print"請輸入您的分數(shù)?\n";
- $scorre=<STDIN>;
- chop($score);
- if($score>60)
- {
- print"您的分數(shù)大于60分!\n";
- }
- elsif($score<60){
- print"您的分數(shù)小于60分!\n":
- }
- else{
- print"您的分數(shù)剛好是60分!\n";
- }
#p#
指令:unless假如非
unless的含義就是說“如果判別式不為真,就執(zhí)行...”。
語法一:
unless(判別運算式){
判別式為假時語句塊;
}
上個語法在Perl中也可以寫成:判別式為假時語句塊unless(判別運算式);
范例:
- print"請輸入您的分數(shù)?\n";
- $scorre=<STDIN>;#<STDIN>代表標準輸入,會讓使用者輸入一字符串
- chop($score);#將$score***一個換行字符\n刪除掉
- unless($score<60)
- {
- print"您的分數(shù)及格了!\n";
- }
也可以寫成:print"您的分數(shù)及格了!\n"unless($score<60);
語法二:
unless(判別運算式)
{
判別式為假時語句塊;
}else{
判別式為真時語句塊;
}
范例:
- print"請輸入您的分數(shù)?\n";
- $scorre=<STDIN>;
- chop($score);
- unless($score<60)
- {
- print"您的分數(shù)及格了!\n";
- }
- else{
- print"您的分數(shù)不及格!\n";
- }
【編輯推薦】
- Perl基礎(chǔ) Perl復(fù)雜數(shù)據(jù)結(jié)構(gòu)
- Perl print命令使用時遇到的兩個問題
- 使用 Perl 增強 Twitter 實用性
- 揭秘Perl變量中Perl純變量用法
- Perl變量中Perl數(shù)組概念詳解