加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

perl面试题解析

发布时间:2020-12-15 21:07:10 所属栏目:大数据 来源:网络整理
导读:数据分析 检测系统某一目录下是否存在文件a.txt,有的话,则mv成新的文件,没有,则创建它,并向文件中输入以下数字: 1???????0???????12???????1???????13???????0???????1?4???????1???????1?5???????0???????1?6???????1???????1?7???????0???????1?8????

数据分析

检测系统某一目录下是否存在文件a.txt,有的话,则mv成新的文件,没有,则创建它,并向文件中输入以下数字:

1???????0???????1
2???????1???????1
3???????0???????1?
4???????1???????1?
5???????0???????1?
6???????1???????1?
7???????0???????1?
8???????1???????1

?

面试中,对这个题目产生了歧义,一时紧张,竟然不知从何下手。回来仔细一想,so easy!

1)出题者的本意解法

#!/bin/env?perl??
use?strict;?

if?(-e?'a.txt')?{???
?system?"mv?a.txt?a.txt.old";?
?}
??else?{????
??system?"touch?a.txt";?}??
??
??open?my?$file,'>>','a.txt'?or?die?"$!n";??
??for(my?$i=1;$i<9;$i++){???
?????if?($i?%?2)?{??????
????????print?$file?"$it0t1n";?????}????
?????????else?{?????????
?????????print?$file?"$it1t1n";???
???????????}?
}

2)产生歧义的解法

#!/bin/env?perl??
use?strict;??

if?(-e?'a.txt')?{???
????system?"mv?a.txt?a.txt.old";?
}
?else?{????system?"touch?a.txt";?
?}??
?
?open?my?$file,'a.txt'?or?die?"$!n";?
?
??print?$file?<<'EOF';?
??1???????0???????1?
??2???????1???????1?
??3???????0???????1?
??4???????1???????1?
??5???????0???????1?
??6???????1???????1?
??7???????0???????1?
??8???????1???????1?
??EOF??
??
??close?$file;

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读