1.下列表达式各表示什么不同的含义:
$ginger->[2][1]
${$ginger[2]}[1]
$ginger->[2]->[1]
${$ginger->[2]}[1]

除第2个表示数组的元素,其他的都表示相同的意义

4. 9. 2. 练习2 [30 分钟]
运用书中最后那个版本的check_required_items , 写一个子程序

check_items_for_all , 把一个散列引用作为惟一参数.这个散列引用的键是在

Minnow 船上的所有乘客, 其对应的值是他们各自想带上船的东西。

比如, 这个散列引用可以是这样的:

my @gilligan =. . . gilligan items. . . ;

my @skipper =. . . skipper items. . . ;

my @professor =. . . professor items. . . ;

my %all = (

Gilligan => \@gilligan,

Skipper => \@skipper,

Professor => \@professor,

);

check_items_for_all(\%all);

我们新建的那个子程序要调用check_required_items 来为散列中每个人更新其

必需的装备清单。

my @gilligan = qw(red_shirt hat lucky_socks water_bottle);
my @skipper = qw(blue_shirt hat jacket preserver sunscreen);
my @professor = qw(sunscreen water_bottle slide_rule batteries radio);
my %all = (
Gilligan => \@gilligan,
Skipper => \@skipper,
Professor => \@professor,
);
check_items_for_all(\%all); sub check_items_for_all {
my $all = shift ; foreach my $person ( keys %{$all} ) {
check_required_items($person,$all->{$person}); } } sub check_required_items{
my $who = shift ;
my $items = shift; my @required = qw(preserver sunscreen water_bottle jacket);
my @missing = ( ); foreach my $item (@required) {
unless ( grep $item eq $_ ,@$items ) {
print "$who is missing $item. \n";
push @missing,$item;
}
} if (@missing) {
print "Adding @missing to @$items for $who. \n";
push @$items,@missing;
} }

Perl中级第四章课后习题的更多相关文章

  1. c++面向对象程序设计第四章课后习题

    这是书上的习题,我使用的是VS2010运行编译的 原习题: 4.有两个矩阵a和b,均为两行三列.求两个矩阵之和.重载运算符“+”,使之能用于矩阵相加.如c=a+b. #include<iostr ...

  2. python语言程序设计基础(嵩天)第四章课后习题部分答案

    p121: *题4.1:猜数字游戏.在程序中预设一个0~9之间的整数,让用户通过键盘输入所猜的数,如果大于预设的数,显示“遗憾,太大了!”:小于预设的数,显示“遗憾,太小了!”,如此循环,直至猜中该数 ...

  3. 视觉slam十四讲第8章课后习题3+稀疏直接法程序注释

    版权声明:本文为博主原创文章,转载请注明出处: http://www.cnblogs.com/newneul/p/8571653.html 3.题目回顾:在稀疏直接法中,假设单个像素周围小块的光度也不 ...

  4. 视觉slam十四讲第七章课后习题6

    版权声明:本文为博主原创文章,转载请注明出处: http://www.cnblogs.com/newneul/p/8545450.html 6.在PnP优化中,将第一个相机的观测也考虑进来,程序应如何 ...

  5. 视觉slam十四讲第七章课后习题7

    版权声明:本文为博主原创文章,转载请注明出处:http://www.cnblogs.com/newneul/p/8544369.html  7.题目要求:在ICP程序中,将空间点也作为优化变量考虑进来 ...

  6. C语言程序设计·谭浩强(第四版)第二章课后习题的答案,算法——程序的灵魂

    C语言程序小练习 1.用C语言设计程序算出1-1/2+1/3-14+1/5...+1/99-1/100的值 #include<stdio.h> int main() { ; double ...

  7. perl 第十四章 Perl5的包和模块

    第十四章 Perl5的包和模块 by flamephoenix 一.require函数  1.require函数和子程序库  2.用require指定Perl版本二.包  1.包的定义  2.在包间切 ...

  8. C程序设计(第四版)课后习题完整版 谭浩强编著

    //复习过程中,纯手打,持续更新,觉得好就点个赞吧. 第一章:程序设计和C语言 习题 1.什么是程序?什么是程序设计? 答:程序就是一组计算机能识别和执行的指令.程序设计是指从确定任务到得到结果,写出 ...

  9. 关于《Java读书笔记》第六章课后习题选择题总结与疑问

    课后习题 选择题 3 题 代码: class Some{ String ToString(){ return "Some instance"; } } public class M ...

随机推荐

  1. git_share

    linux 环境(192.168.8.58) 1. 生成rsa key $ ssh-keygen 如果你之前没有跑过这个文件, 接受默认选项即可. 这样你会在 ~/.ssh/下看到 id_rsa和id ...

  2. Selenium WebDriver + Grid2 + RSpec之旅(一)----准备篇

    Selenium WebDriver + Grid2 + RSpec之旅(一)             ----准备篇 前言 在Web 2.0 应用中,在浏览器种类盛行的时代,我们在测试过程中不仅要模 ...

  3. Android定义的路径全局变量

    Android定义的路径全局变量 ifeq (,$(strip $(OUT_DIR))) OUT_DIR := $(TOPDIR)out endif DEBUG_OUT_DIR := $(OUT_DI ...

  4. hdu 4405概率dp

    #include <cstdio> #include <cstring> #include <iostream> #include <cmath> #i ...

  5. [置顶] linux下让php支持mysql——寻找消失的mysql

       问题 最近我都在忙一个课件录制系统.这两天发现其中服务器端的一个更新数据库的php脚本运行有问题,一些本应该是系统自带函数却无法运行.于是我展开了调查... 服务器端是centos系统,其中ph ...

  6. 关于python写GUI桌面应用的一些研究结果

    研究了一下python开发GUI桌面应用的解决方案,研究结果记录如下: EasyGui:控件极为简单,连个基本的grid.list组件都没有,不适合商用,甚至是普通的应用都不行,放弃! Tkinter ...

  7. php动态网页实现页面静态化 通过在初次被访问时生成html文件保存起来,下次该PHP程序被访问时就直接找到以前被访问过的html页面

    一.什么是静态页面?什么是动态页面 静态页面是网页的代码都在页面中,不需要执行asp,php,jsp,.net等程序生成客户端网页代码的网页.不能   静态页面 动态页面 区别:           ...

  8. 用bootstrap结合php搭建MIS系统框架【转载】

    bootstrap目前比较火,抽空简单了解一下 官方介绍:Bootstrap, from Twitter基于HTML,CSS,JAVASCRIPT的简洁灵活的流行前端框架及交互组件集 http://t ...

  9. 每天一个JavaScript实例-从一个div元素删除一个段落

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  10. java中经常使用的日期格式化(全)

    import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; imp ...