用C语言写打印自己的程序
2006-04-04 19:51
363 查看
第五期程序员新开设的智慧擂台栏目出了这样一个题目:设计一段程序,让它能够打印自己。恰巧最近闲暇之时看的《高效程序的奥秘》(Hacker's Delight)中提到过这个。这本书的前言中,作者Herry S.Warren,Jr.这样写到:据作者所知,用C语言写成的最短的这种程序是Vlad
Taeerov和Rashit Fakhreyev所写的包含64个字符的程序:
[align=left] main(a){printf(a,34,a="main(a){printf(a,34,a=%c%s%c,34);}",34);}[/align]
[align=left] 我试了一下,用gcc编译通过。这会不会是用C语言写成的最短的程序呢?[/align]
[align=left] 另外,《高效程序的奥秘》这本书主要介绍了一些对整数、位串操作的优雅高效的程序设计小技巧。如果您对编写高效的代码比较感兴趣,不妨一读。[/align]
Taeerov和Rashit Fakhreyev所写的包含64个字符的程序:
[align=left] main(a){printf(a,34,a="main(a){printf(a,34,a=%c%s%c,34);}",34);}[/align]
[align=left] 我试了一下,用gcc编译通过。这会不会是用C语言写成的最短的程序呢?[/align]
[align=left] 另外,《高效程序的奥秘》这本书主要介绍了一些对整数、位串操作的优雅高效的程序设计小技巧。如果您对编写高效的代码比较感兴趣,不妨一读。[/align]
相关文章推荐
- 用进程相关API函数编程一个程序,使之产生一个进程扇,父进程产生一系列子进程,每个子进程打印自己的PID然后退出。要求父进程最后打印PID
- C语言小程序-(打印9*9的数独)
- 编写一个程序,开启3个线程,这3个线程的ID分别为A、B、C,每个线程将自己的ID在屏幕上打印10遍,要求输出结果必须按ABC的顺序显示;如:ABCABC….依次递推。
- 【c语言】编写一个程序,从标准输入读取几行输入。每行输入都要打印到标准输出上,前面加上行号。在编写这个程序的时候要使这个程序能够处理的输入行的长度没有限制。
- 编写一个程序,开启3个线程,这3个线程的ID分别为A、B、C,每个线程将自己的ID在屏幕上打印10遍,要求输出结果必须按ABC的顺序显示;如:ABCABC….依次递推
- 编写一个程序,开启3个线程,这3个线程的ID分别为A、B、C,每个线程将自己的ID在屏幕上打印10遍,要求输出结果必须按ABC的顺序显示;如:ABCABC….依次递推。
- Linux 程序开发打印 Debug 信息的使用技巧--C语言中几种输出调试信息的方法
- C语言打印自己
- 打印自身代码的C语言小程序
- 编写一个程序,开启3个线程,这3个线程的ID分别为A、B、C,每个线程将自己的ID在屏幕上打印10遍,要求输出结果必须按ABC的顺序显示;如:ABCABC….依次递推
- js中设计一段程序,让它能够打印自己的方法收集藏
- 打印自己的程序C#版
- 学C语言自己写的一个程序
- 赛码网,将功赎过问题,用C语言自己实现的一个程序,仅供参考
- 用C语言编写程序打印一朵玫瑰花
- 一个简单有趣的C语言自打印程序print-me.c
- 编写一个程序,开启3个线程,这3个线程的ID分别为A、B、C,每个线程将自己的ID在屏幕上打印10遍,要求输出结果必须按ABC的顺序显示;如:ABCABC….依次递推。
- 编写一个程序,开启3个线程,这3个线程的ID分别为A、B、C,每个线程将自己的ID在屏幕上打印10遍
- c语言:实现一个函数,打印乘法口诀表,口诀表的行数和列数自己指定
- C语言:编写程序求解:有1,2,3,4,个数字,将组成互不相同且无重复数字出现的三位数打印出来