荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: bso (meteor), 信区: Program
标  题: Re: 谁敢来挑战:天书奇谈C
发信站: 荔园晨风BBS站 (Sat Feb 18 15:42:21 2006) , 站内信件

/* 这个程序也真是足够变态的了,居然输出一首爱情诗.........只能按C的语法注释试试
*/
/* 此程序反复递归调用main()函数,注意,在标准C++中不允许递归调用main()函数 */
#include <stdio.h>
main(t,_,a)char *a;  /* 在这里声明了全局变量字符串a */
/* 在这里main()函数的参数声明方法是老式的,在这里参数只是占位符,与现在参数声明方
法有区别 */
{
         return !0<t?      /* 传入主程序命令参数t是否大于1 */
                 t<3?  /* 传入主程序命令参数t是否小于3 */
                 main(-79,-13,a+main(-87,1-_,main(-86,0,a+1)+a)) /* 当1<t<3时返
回进行递归调用main函数 */
                :1,  /* 当t>3时返回1,并且继续调用下面的语句 */
                t<_?main(t+1,_,a):3,  /* 继续比较t与_的大小,当t<_时调用main(t+1,
_,a),否则,返回3,并继续调用下面的语句 */
                main(-94,-27+t,a)&&t==2?  /* 判断main(-94,-27+t,a)的真值并且判断
t是否等2 */
                        _<13?main(2,_+1,"%s %d %d\n"):9  /* 当上面的条件为真时返
回此语句 */
                :16                              /* 为假时返回16 */
                /* 下面语句是当t<=1时的调用语句 */
                :t<0?                  /* 当t<0时继续判断t是否小于-72,当t<-72时
调用main(_,t,一连串字符)*/
                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<-72时的main结束 */
                :t<-50?     /* t>=-72时*/
                _==*a?putchar(31[a])  /* 当-72<t<-50时,若_的值等于字符串a所在首
地址的整型值(自动转换)则输出 */
                :main(-65,_,a+1)  /* 否则调用此main()函数*/
                :main((*a=='/')+t,_,a+1)  /* 当-50<t<0时 */
                :0<t?   /* 当t>=0时,判断t是否>0 */
                main(2,2,"%s")     /* 若t=1执行此语句 */
                :*a=='/'||main(0,main(-61,*a,
"!ek;dc i@bK'(q)-[w]*%n+r3#l,{}:\nuwloca-O;m .vpbks,fxntdCeghiry"),a+1); /*
return语句结束*/
}
【 在 KOKORO 的大作中提到: 】
: 这是一个国外网站之前搞的有奖比赛, 以写出看不懂的程序为最高...原文是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' ')# \

: (以下引言省略...)

--
╰╮°·.∴▍★∴                  梦想农庄音乐站----http://192.168.117.111
║LOVE║☆.°▍▍.☆█            音乐模式:http://192.168.117.111/music.htm
╰══╯◥█▅██▅██▅███◤  星动BT站:http://192.168.117.111/plus_bt.asp
╭║╮ ∴我对你的思念!心∴  ╭║╮  软件下载站:ftp://192.168.117.111
 ╲╱°┻┻┻┻┻┻┻┻┻┻┻╲╱   上传账号:UPLOAD    上传密码:UPLOAD
上网代理:192.168.117.111 端口8000-8009 / 8888我的
Blog:http://iloveblog.cn/user1/118/

※ 来源:.荔园晨风BBS站 http://bbs.szu.edu.cn [FROM: 192.168.117.111]

※ 修改:.bso 於 Feb 18 15:46:41 2006 修改本文.[FROM: 192.168.117.111]
※ 修改:.bso 於 Feb 18 15:48:13 2006 修改本文.[FROM: 192.168.117.111]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店