文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>Perl语言入门笔记:第三天

Perl语言入门笔记:第三天

时间:2010-08-15  来源:linscora

while 控制结构: perl和大部分用来实现算法的语言一样,也有好几种循环结构,在while循环中,只要条件待续为 真,就会不断执行块里的程序代码:  

$count = 0;
while ($count <20) {
    $count += 2; ### eq $count

= $count +2;
    print "count is now $count\n";
}


这里的真假值与之前提到的if条件测试里的真假值定义相同。

undef值:
如果还没赋值就用到了某个标量,会有什么结果呢?答案是,不会发生什么大不了的事,也绝对不

会让程序中止运行。在首次被赋值之前,变量的初始值就是特殊的undef(未定义),它在Perl里

的意思只不过是:这里空无一物,走开,走开。如果你想把这个“空无一物”当成数字,使用,它就

会假设这是0,如果当成字符串使用,它就会假设这是空字符串。但是undef既不是数字也不是字符

串,它完全是另一种类型的标量值。

既然undef作为数字时会视为零,我们可以很容易地构成一个数值累加器,它在开始时是空的:
#累加一些奇数

 

$n = 1;
while ($n < 10) {
    $sum += $n;
    $n +=2; #准备下一个奇数

}
print "The total was $sum.\n";


efined 函数:

“行输入”操作符<STDIN>有时候会返回undef。在一般状况下,它会返回一行文字,但若没有更多输

入,比如读到文件结尾(end-of-file),它就会返回undef来表示这个状况,要判断某个字符串是

undef而不是空字符串,可以使用defined函数,如果是undef,该函数返回假,否则返回真。

 

$madonna = <STDIN>;
if (defined($madonna)) {
    print "The input was $madonna";
} else {
    print "No input available!\n";
}

习题:
==================================
#!/usr/bin/perl -w

$pi = 3.141592654;
$circ = 2 * $pi * 12.5;
print "The circumference of a circle of radius 12.5 is $circ.\n";
==================================

#!/usr/bin/perl -w

$pi = 3.141592654;
print "What is the radius?";
chomp($radius = <STDIN>);
$circ = 2 * $pi * $radius;
print "The circumference of a circle of radius $radius is $circ.\n";

=====================================================================

#!/usr/bin/perl -w

$pi = 3.141592654;
print "What is the radius?";
chomp($radius = <STDIN>);
$circ = 2 * $pi * $radius;
if ($radius < 0 ) {
    $circ = 0;
}
print "The circumference of a circle of radius $radius is $circ.\n";

=====================================================================

$pi = 3.141592654;
$radius = <STDIN>;
chomp ($radius);
if ( $radius < 0 ) {
    print    "The circumference of a circle of radius $radius is 0.\n";
} else {
    $circ = 2 * $pi * $radius;
    print "The circumference of a circle of radius $radius is $circ.\n";
}

======================================================================

#!/usr/bin/perl -w

print "Enter first number: ";
chomp($one = <STDIN>);
print "Enter second number: ";
chomp($two = <STDIN>);
$result = $one * $two;
print "The result is $result.\n";

=======================================================================

print "Enter a string: ";
$str = <STDIN>;
print "Enter a number of times: ";
chomp ($num = <STDIN>);
$result = $str x $num;
print "The result is:\n$result";

13:13 2010-8-15

相关阅读 更多 +
排行榜 更多 +
翌日波奇狗的历险记手机版下载

翌日波奇狗的历险记手机版下载

休闲益智 下载
怪兽远征安卓版下载

怪兽远征安卓版下载

角色扮演 下载
谷歌卫星地图免费版下载

谷歌卫星地图免费版下载

生活实用 下载