QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1634|回复: 11

你一定会被输出结果惊得目瞪口呆!

[复制链接]
发表于 2003-3-26 09:27:02 | 显示全部楼层 |阅读模式
/***************************************
你能猜出这段程序的输出结果吗?

许多人都坚信,只要有源代码,他们就总能搞懂代码里所有的玄机。
下面这几行C语言代码就是对这一类人的最大嘲弄:

这只是一段普通的C语言代码罢了。我知道,它也许看上去不那么
好看,似乎这只是一堆无法通过编译的字符垃圾。不过,为什么
你不试一试呢?它的确能通过所有C语言编译器的编译。

我担保你猜不出它的运行结果,试着运行一下,你一定会被输出结
果惊得目瞪口呆。
***********************************************/


[code:1]
#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);}

[/code:1]
发表于 2003-3-26 09:42:12 | 显示全部楼层

Re: 你一定会被输出结果惊得目瞪口呆!

[quote:ec0669ba62="whlvme"]/***************************************
你能猜出这段程序的输出结果吗?

许多人都坚信,只要有源代码,他们就总能搞懂代码里所有的玄机。
下面这几行C语言代码就是对这一类人的最大嘲弄:

这只是一段普通的C语言代码罢了。我知道,它也许看上去不那么
好看,似乎这只是一堆无法通过编译的字符垃圾。不过,为什么
你不试一试呢?它的确能通过所有C语言编译器的编译。

我担保你猜不出它的运行结果,试着运行一下,你一定会被输出结
果惊得目瞪口呆。
***********************************************/


[code:1]
#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);}

[/code:1][/quote]
每年都会有这么个比赛,呵呵,不是人看的程序。

没准过几天,作者也看不懂了:-)
回复

使用道具 举报

发表于 2003-3-26 10:01:30 | 显示全部楼层
把格式整理一下就可以了。分清运算符优先级,还是可以读的。不过这种程序看多了会吐的。
回复

使用道具 举报

发表于 2003-3-26 10:13:14 | 显示全部楼层
我呆!!!!!
我的gcc呆住了!!!
不过vc认不出来
回复

使用道具 举报

发表于 2003-3-26 10:17:23 | 显示全部楼层
我的dev-c++报了两个错!

奇妙!
回复

使用道具 举报

发表于 2003-3-26 13:44:55 | 显示全部楼层
我还是写出来吧.

On the first day of Christmas my true love gave to me
a partridge in a pear tree.

On the second day of Christmas my true love gave to me
two turtle doves
and a partridge in a pear tree.

On the third day of Christmas my true love gave to me
three french hens, two turtle doves
and a partridge in a pear tree.

On the fourth day of Christmas my true love gave to me
four calling birds, three french hens, two turtle doves
and a partridge in a pear tree.

On the fifth day of Christmas my true love gave to me
five gold rings;
four calling birds, three french hens, two turtle doves
and a partridge in a pear tree.

On the sixth day of Christmas my true love gave to me
six geese a-laying, five gold rings;
four calling birds, three french hens, two turtle doves
and a partridge in a pear tree.

On the seventh day of Christmas my true love gave to me
seven swans a-swimming,
six geese a-laying, five gold rings;
four calling birds, three french hens, two turtle doves
and a partridge in a pear tree.

On the eigth day of Christmas my true love gave to me
eight maids a-milking, seven swans a-swimming,
six geese a-laying, five gold rings;
four calling birds, three french hens, two turtle doves
and a partridge in a pear tree.

On the ninth day of Christmas my true love gave to me
nine ladies dancing, eight maids a-milking, seven swans a-swimming,
six geese a-laying, five gold rings;
four calling birds, three french hens, two turtle doves
and a partridge in a pear tree.

On the tenth day of Christmas my true love gave to me
ten lords a-leaping,
nine ladies dancing, eight maids a-milking, seven swans a-swimming,
six geese a-laying, five gold rings;
four calling birds, three french hens, two turtle doves
and a partridge in a pear tree.

On the eleventh day of Christmas my true love gave to me
eleven pipers piping, ten lords a-leaping,
nine ladies dancing, eight maids a-milking, seven swans a-swimming,
six geese a-laying, five gold rings;
four calling birds, three french hens, two turtle doves
and a partridge in a pear tree.

On the twelfth day of Christmas my true love gave to me
twelve drummers drumming, eleven pipers piping, ten lords a-leaping,
nine ladies dancing, eight maids a-milking, seven swans a-swimming,
six geese a-laying, five gold rings;
four calling birds, three french hens, two turtle doves
and a partridge in a pear tree.


我无法想像,他是怎样作出来的
回复

使用道具 举报

发表于 2003-3-26 18:53:46 | 显示全部楼层
逆推
回复

使用道具 举报

发表于 2003-3-26 19:13:28 | 显示全部楼层
我知道了,因为文本在linux下和window下换行的不同.

现在vc下也编译通过了.
回复

使用道具 举报

发表于 2003-3-26 21:54:51 | 显示全部楼层
我猜到了开头,却没有猜到结果
回复

使用道具 举报

发表于 2003-3-27 09:35:56 | 显示全部楼层
是一个递归调用,调的很深
回复

使用道具 举报

发表于 2003-3-27 16:04:20 | 显示全部楼层
  不好意思,你们讲的什么我一点都不懂,呜呜呜.....我是一只还没入门的小小菜鸟,想要努力学却怎么样也学不好,我寻寻觅觅寻寻觅觅一个学习的绝窍,这样的要求算不算太高。呜......
回复

使用道具 举报

发表于 2003-3-27 21:43:08 | 显示全部楼层
别自卑了 看不懂的人是正常人
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-16 06:26 , Processed in 0.038206 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表