这是一个国外网站之前搞的有奖比赛, 以写出看不懂的程序为最高…原文是C语言版(注意,是C程序,不是C++程序,可以用任何C编译器编译这段程序,但未必能通过C++编译)。最近由国内的一位爱好者将其改为C#版,誓要将程序阅读比赛挑战到底。
原文说明:Here’s a nice challange for people who THINK they know how to read other people’s code…
It’s a small C program. I know, I know, it doesn’t look like it’s gonna get compiled, but believe me, it does. Try to guess this program’s output, then try to run it. You’ll be amazed to see what it does!
C语言版的挑战:
#include <stdio.h>
main(t,_,a)char *a;{return!0<t?t<3?main(-79,-13,a+main(-87,1-_,
main(-86,0,a+1)+a)):1,t<_?main(t+1,_,a):3,main(-94,-27+t, a)&&t==2?_<13?
main(2,_+1,”%s %d %d\n”):9:16:t<0?t<-72?main(_,t,
“@n’+,#’/*{}w+/w#cdnr/+,{}r/*de}+,/*{*+,/w{%+,/w#q#n+,/#{l+, /n{n+,/+#n+,/#\
;#q#n+,/+k#;*+,/’r :’d*’3,}{w+K w’K:’+}e#’;dq#’l \
q#’+d’K#!/+k#;q#’r}eKK#}w’r}eKK{nl]’/#;#q#n’){)#}w’){){nl]’/ +#n’;d}rw’ i;# \
){nl]!/n{n#’; r{#w’r nc{nl]’/#{l,+’K {rw’ iK{;[{nl]‘/w#q#n’wk nw’ \
iwk{KK{nl]!/w{%’l##w#’ i; :{nl]’/*{q#’ld;r’}{nlwb!/*de}’c \
;;{nl’-{}rw]’/+,}##’*}#nc,’,#nw]’/+kd’+e}+;#’rdq#w! nr’/ ‘) }+}{rl#’{n’ ‘)# \
}’+}##(!!/”)
:t<-50?_==*a?putchar(31[a]):main(-65,_,a+1):main((*a==’/')+t,_,a+1)
:0<t?main(2,2,”%s”):*a==’/'||main(0,main(-61,*a,
“!ek;dc i@bK’(q)-[w]*%n+r3#l,{}:\nuwloca-O;m .vpbks,fxntdCeghiry”),a+1);}
C#版的挑战:
1 class __{static void Main(){O(1,0,”");}static int O(int l,int I,string _){int o;
2 if(1<l){if(3>l)O(-79,-13,_.Substring(O(-87,1-I,_.Subst ring(O(-86,0,_.Substring(1
3 ))))));if(I>l)O(l+1,I,_);o=0==O(-94,-27+l,_)||l!=2?16:I&g t;12?9:O(2,I+1,”air|skyiv”
4 );}else if(0>l){if(-72>l)o=O(I,l,”@n’+,#’/*{}w+/w#cdnr/+,{}r/* de}+,/*{*+,/w{%+”+
5 “,/w#q#n+,/#{l+,/n{n+,/+#n+,/#;#q#n+,/+k#;*+,/’r :’d*’3,}{w+K w’K:’+}e#’;dq#’l”+
6 ” q#’+d’K#!/+k#;q#’r}eKK#}w’r}eKK{nl]’/#;#q#n’){)#}w’){){nl]’/ +#n’;d}rw’ i;# )”+
7 “{nl]!/n{n#’; r{#w’r nc{nl]’/#{l,+’K {rw’ iK{;[{nl]‘/w#q#n’wk nw’ iwk{KK{nl]!/”+
8 “w{%’l##w#’ i; :{nl]’/*{q#’ld;r’}{nlwb!/*de}’c ;;{nl’-{}rw]’/+,}##’*}#nc,’,#nw”+
9 “]’/+kd’+e}+;#’rdq#w! nr’/ ‘) }+}{rl#’{n’ ‘)# }’+}##(!!/”);else if(-51<l)o=O((_[
10 0]==47?1:0)+l,I,_.Substring(1));else if(I!=_[0])o=O(-65,I,_.Substring(1));else{o
11 =_[31];System.Console.Write(_[31]);}}else o=0<l?O(2,2,”c#”):47==_[0]?1:O(0,O(-61
12 ,_[0],”!ek;dc i@bK’(q)-[w]*%n+r3#l,{}:\nuwloca-O;m .vpbks,fxntdCeghiry”),_.
13 Substring(1));return o;}}
-
近期文章
近期评论
- coolker 发表在《打造最快的Hash表》
- struggle 发表在《提供C语言教学课件(适用于初学者)》
- zhanghaibo 发表在《提供C语言教学课件(适用于初学者)》
- zhanghaibo 发表在《提供C语言教学课件(适用于初学者)》
- diys 发表在《C语言编程宝典(王大刚) 1.1 C 语言的产生与发展》
文章归档
- 2022 年十月
- 2014 年一月
- 2013 年十二月
- 2012 年十一月
- 2012 年七月
- 2012 年六月
- 2012 年五月
- 2012 年四月
- 2012 年三月
- 2012 年二月
- 2011 年十二月
- 2011 年十月
- 2011 年九月
- 2011 年八月
- 2011 年七月
- 2011 年六月
- 2011 年五月
- 2011 年四月
- 2011 年三月
- 2011 年二月
- 2011 年一月
- 2010 年十二月
- 2010 年十一月
- 2010 年十月
- 2010 年九月
- 2010 年八月
- 2010 年七月
- 2010 年六月
- 2010 年五月
- 2010 年四月
- 2010 年三月
- 2010 年二月
- 2010 年一月
- 2009 年十二月
- 2009 年十一月
- 2009 年十月
- 2009 年九月
- 2009 年八月
- 2009 年七月
- 2009 年六月
- 2009 年五月
- 2009 年四月
- 2009 年三月
- 2009 年二月
- 2009 年一月
- 2008 年十二月
- 2008 年十一月
- 2008 年十月
- 2008 年九月
- 2008 年八月
- 2008 年七月
- 2008 年六月
- 2008 年五月
- 2008 年四月
- 2008 年三月
- 2008 年二月
- 2008 年一月
- 2007 年十二月
- 2007 年十一月
- 2007 年十月
- 2007 年九月
- 2007 年八月
- 2007 年七月
- 2007 年六月
- 2007 年三月
- 2007 年二月
- 2007 年一月
- 2006 年十二月
- 2006 年十一月
- 2006 年十月
- 2006 年九月
- 2006 年八月
- 2006 年七月
- 2006 年六月
- 2006 年五月
- 2006 年四月
- 2006 年三月
- 2006 年二月
- 2006 年一月
- 2005 年十二月
- 2005 年十一月
分类目录
功能