永发信息网

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

答案:4  悬赏:0  手机版
解决时间 2021-01-29 02:30
  • 提问者网友:無理詩人
  • 2021-01-28 02:58
是n个文件,抽取N个,回答满意一定多加,嘿嘿
最佳答案
  • 五星知识达人网友:迷人又混蛋
  • 2021-01-28 03:13
#!c:/Perl/bin/perl.exe

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

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

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

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

windows下随便写的,版本perl 5.10.1
全部回答
  • 1楼网友:独钓一江月
  • 2021-01-28 06:21
别忘了有 rand这种东西
  • 2楼网友:十年萤火照君眠
  • 2021-01-28 04:43
再加一个循环,产生N个随机数:$N
  • 3楼网友:独钓一江月
  • 2021-01-28 04:36
若有n个文件,则先用readdir把文件读入数组。再用随机函数rand取随机下标,读取文件名字抽取信息
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯