配列の受け渡し

明解C言語 入門編 > 6. 関数 >

配列の受け渡し

Perl
$NINSU = 5;

sub max_of
{
    (@vc) = @_;

    $no  = $vc[0];
    $max = $vc[1];

    for (2..$no + 1)
    {
        $max = $vc[$_] if ($vc[$_] > $max);
    }

    return $max;
}

print "$NINSU人の点数を入力してください。\n";

for (0..$NINSU - 1)
{
    printf("[%d] 英語:", $_ + 1);
    chomp($eng[$_] = <>);

    printf("    数学:");
    chomp($mat[$_] = <>);
}

$max_e = &max_of($NINSU, @eng);
$max_m = &max_of($NINSU, @mat);

printf("英語の最高点%d\n", $max_e);
printf("数学の最高点%d\n", $max_m);

実行結果

L:\>perl lesson_06_047.pl
5人の点数を入力してください。
[1] 英語:53
数学:82
[2] 英語:49
数学:35
[3] 英語:21
数学:72
[4] 英語:91
数学:35
[5] 英語:77
数学:12
英語の最高点91
数学の最高点82