想不到这样的一个程序,让我学到了如此多的东西,
一步一步地真相大白,一步一步地逼近真理,这是从来没有过的,
我想,如果你是从我的第一篇分析开始一步一的读到这片文章,你也会有同感的,
不是吗。除此之外我还学会了怎样把自己写的程序弄得神秘一些,你也一样把,看看
我们想法是不是一样啊。(下面是我的想法,你打呢,我很想知道?email me :
efiish@gmail.com or efiish@163.com 期待着你的解答)
让我们来揭开这个程序的神秘面纱把,
下面来总结一下写一个这样乱的程序的步骤:
1。按你自己的方式把coding,完成你想要的功能
2。把局部变量丢到main函数的参数中去,就像本程序的
int t,int _,char *a其中至少拿一个变量来作为流程控制变量
就像本程序中的t,他除了用作流程控制之外,还用作了循环
的控制变量(即i),而 参数 _ 和 a 则用作调用其它函数的参数
3。按 t 的不同值执行不同的流程,即把你定义的函数,包括原来
的main函数放到 t 的不同case中去,如:本程序中 t==2
是执行的就是函数 void put_out_the_first_line(int num)
而t>1执行的就是原来的主函数,其他的函数一样的换
4。把原来调用了函数的地方全部用main()函数来换,传不同的
参数给他,则调用了不同的函数,如:本程序中main(2,n,a)实际上就是调用了put_out_the_first_line(n)
5。第四步做好后,已经没有函数了,这一步就是对付循环了,循环
这用main(t+1,n,a)来用,这个地方不好说,不过琢磨
一下,我想,很容易搞定的
6。现在没有函数也没有循环了,我们再把if(){}else{}语句用 ? :号表达式来换
7。好了,还有一些单句,怎么办呢?对了,用简单的逗号表达 式就行了
8。你甚至还可以作的更绝一些,只要你想得到,就大胆的去做吧
对于一个优秀的程序员来说只有想不到没有做不到,相信这句话