perl中的控制语句及函数定义

2024-06-13 02:08
文章标签 函数 定义 控制 语句 perl

本文主要是介绍perl中的控制语句及函数定义,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1. 条件控制语句

if(条件表达式)

{

#语句

}

else

{

#语句

}

given…when结构形式为:

given (标量)

when()  { }

when()  { }

when()  { }

when()  { }

 

given语句的用法为:

#!/usr/bin/perl -w
use 5.010001;
my $m=<STDIN>;
given ($m)
{
when (/[0-9]/) {print "it is a number\n";}
when (/[a-z]/)  {print "it is a letter\n"}
default  {print "\n";}
}
2.  循环控制语句

(1)while (条件表达式)

{

# 循环体语句

}

 (2)until (条件表达式)

{

# 循环体

}

(3)do

{

#循环体

}while(条件表达式)

(4)foreach标量(标量)

{

# 循环体

}

foreach的简单使用实例为:

#!/usr/bin/perl -w

foreach $m (1..10)

{

print "$m\n";

}

 (5)for循环语句与foreach等价

形式为

for(表达式;表达式;表达式)

(6)循环控制的next,last以及redo

next语句用于跳过本次循环,执行下一次循环,last语句用于退出循环,redo语句用于回到本次循环的开始。next与redo 的区别在于next会跳过本次循环。下面是三种语句的使用实例:

#!/usr/bin/perl -w
use 5.01;
my $n;
for($n=0;$n<10;$n++)
{
say "$n";
say "input a command:next,last or redo";
my $com=<STDIN>;
last if $com=~/last/;
next if $com=~/next/;
redo if $com=~/redo/;
}

在上面的程序中,输入last会跳出循环,输入redo会再次打印本次循环的输出,输入next会打印下一个数字。

(7)上面讲到的last仅仅能退出本层循环,如果想要退出多层循环,可以使用带有标签的语句。使用的例子为:

#!/usr/bin/perl -w
use 5.01;
my $num;
my $j;
LABEL:for($num=0;$num<10;$num++)
{
for($j=0;$j<$num;$j++)
{
say "input a string";
my $str=<STDIN>;
if ($str=~/stop/)
{
last LABEL;
}
say "you have input: $str";
}
}

在for循环的前面加了LABEL标签,在内层循环中使用last LABEL就可以退出两层循环了。上面的程序中输入stop即可退出循环。

3.   函数的定义及使用

函数的基本形式为

sub  <函数名>

{

# 函数体

}

如定义函数

sub hello

{

print “hello world\n”;

}

可以在意表达式中使用子程序名加上&来调用它,

#! /usr/bin/perl –w
sub hello
{
print “hello world\n”;
}
&hello;

程序中出现hello,world

下面定义了guess函数,用循环语句实现猜数字的功能:

#!/usr/bin/perl -w
my $n=100;
my $num=int(rand($n));
sub guess{
do {
print "input a number which is in the range of (0,100)";
$number=chmop(<STDIN>);
if ($number == $num){
print "riht\n";
}
elsif ($number < $num){
print "too low\n";
}
else {
print "too high\n";
}
}while (1);
}
&guess;


 

这篇关于perl中的控制语句及函数定义的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1055986

相关文章

C++统计函数执行时间的最佳实践

《C++统计函数执行时间的最佳实践》在软件开发过程中,性能分析是优化程序的重要环节,了解函数的执行时间分布对于识别性能瓶颈至关重要,本文将分享一个C++函数执行时间统计工具,希望对大家有所帮助... 目录前言工具特性核心设计1. 数据结构设计2. 单例模式管理器3. RAII自动计时使用方法基本用法高级用法

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

GO语言中函数命名返回值的使用

《GO语言中函数命名返回值的使用》在Go语言中,函数可以为其返回值指定名称,这被称为命名返回值或命名返回参数,这种特性可以使代码更清晰,特别是在返回多个值时,感兴趣的可以了解一下... 目录基本语法函数命名返回特点代码示例命名特点基本语法func functionName(parameters) (nam

Python Counter 函数使用案例

《PythonCounter函数使用案例》Counter是collections模块中的一个类,专门用于对可迭代对象中的元素进行计数,接下来通过本文给大家介绍PythonCounter函数使用案例... 目录一、Counter函数概述二、基本使用案例(一)列表元素计数(二)字符串字符计数(三)元组计数三、C

Python中的filter() 函数的工作原理及应用技巧

《Python中的filter()函数的工作原理及应用技巧》Python的filter()函数用于筛选序列元素,返回迭代器,适合函数式编程,相比列表推导式,内存更优,尤其适用于大数据集,结合lamb... 目录前言一、基本概念基本语法二、使用方式1. 使用 lambda 函数2. 使用普通函数3. 使用 N

MySQL中REPLACE函数与语句举例详解

《MySQL中REPLACE函数与语句举例详解》在MySQL中REPLACE函数是一个用于处理字符串的强大工具,它的主要功能是替换字符串中的某些子字符串,:本文主要介绍MySQL中REPLACE函... 目录一、REPLACE()函数语法:参数说明:功能说明:示例:二、REPLACE INTO语句语法:参数

python中update()函数的用法和一些例子

《python中update()函数的用法和一些例子》update()方法是字典对象的方法,用于将一个字典中的键值对更新到另一个字典中,:本文主要介绍python中update()函数的用法和一些... 目录前言用法注意事项示例示例 1: 使用另一个字典来更新示例 2: 使用可迭代对象来更新示例 3: 使用

MySQL ORDER BY 语句常见用法、示例详解

《MySQLORDERBY语句常见用法、示例详解》ORDERBY是结构化查询语言(SQL)中的关键字,隶属于SELECT语句的子句结构,用于对查询结果集按指定列进行排序,本文给大家介绍MySQL... 目录mysql ORDER BY 语句详细说明1.基本语法2.排序方向详解3.多列排序4.常见用法示例5.

Python lambda函数(匿名函数)、参数类型与递归全解析

《Pythonlambda函数(匿名函数)、参数类型与递归全解析》本文详解Python中lambda匿名函数、灵活参数类型和递归函数三大进阶特性,分别介绍其定义、应用场景及注意事项,助力编写简洁高效... 目录一、lambda 匿名函数:简洁的单行函数1. lambda 的定义与基本用法2. lambda

Python 函数详解:从基础语法到高级使用技巧

《Python函数详解:从基础语法到高级使用技巧》本文基于实例代码,全面讲解Python函数的定义、参数传递、变量作用域及类型标注等知识点,帮助初学者快速掌握函数的使用技巧,感兴趣的朋友跟随小编一起... 目录一、函数的基本概念与作用二、函数的定义与调用1. 无参函数2. 带参函数3. 带返回值的函数4.