中易网

用perl语言,实现以下结果,若一个文件有n行,随机抽取其中n行。。。

答案:4  悬赏:10  
解决时间 2021-01-17 13:46
  • 提问者网友:美人性情
  • 2021-01-16 14:54
用perl语言,实现以下结果,若一个文件有n行,随机抽取其中n行。。。
最佳答案
  • 二级知识专家网友:煞尾
  • 2021-01-16 15:21
#!c:/Perl/bin/perl.exe

print "Content-type: text/html\n\n";

open(destfile,"c:/menu.lst");
while()
{
$n=$n+1;
}
$N=int(rand($n));
close(destfile);
print "总行数$n行
随机取$N行\n";

#读取文件行数n,设定$N<$n,随机取小于n的整数N.

open(destfile,"c:/menu.lst");
while()
{
$c=$c+1;
print $_ if ($c==$N);
}
close(destfile);

windows下随便写的,版本perl 5.10.1
全部回答
  • 1楼网友:鸠书
  • 2021-01-16 17:53
别忘了有 rand这种东西
  • 2楼网友:往事埋风中
  • 2021-01-16 16:30
再加一个循环,产生N个随机数:$N
  • 3楼网友:骨子里都是戏
  • 2021-01-16 16:16
若有n个文件,则先用readdir把文件读入数组。再用随机函数rand取随机下标,读取文件名字抽取信息
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息