输出从1到1000的数
来源:互联网 发布:阿里云自定义镜像 编辑:程序博客网 时间:2024/05/23 20:26
有这样一个面试题——请把从1到1000的数打印出来,但你不能使用任何的循环语句或是条件语句。更不能写1000个printf或是cout。用C/C++语言。
我相信,大多数人一开始你可能想到的是递归算法:
当然,题目中说了不能使用条件语句,所以,上面那种解法的不符合题意的,因为还是变向地使用了条件表达式。不过,我们可以用别的方法来让这个递归终止,比如:
除以零,当程序crash,呵呵。
还有这样退出递归的:
还有下面这些各种各样的解法:
不过,print用得多了一些。我们可以用宏嘛。
不过,我们应该使用C++的一些特性,比如:
使用构造函数
或是更为NB的Template:
最后来个BT一点的:
本文来自: http://stackoverflow.com/q/4568645/89806
- 输出从1到1000的数
- 输出从1到1000的数
- 输出从1到1000的数
- 由“输出从1到1000的数”想到的
- 由“输出从1到1000的数”想到的
- 【转】输出从1到1000的数
- [转]输出从1到1000的数,不能使用循环和条件语句
- 6.4输出从1到n的所有数的平方与立方
- 输出从1到N个数,如果是某两个数的倍数则变化
- 从0到n-1中随机等概率输出m个不重复的数
- 从0到n-1中随机等概率输出m个不重复的数
- 有1-m个数,围成一圈,从第一个开始数,数到n的数退出,输出最后剩下的那个数
- 用布尔型输出从0到一个数中间被三整除的数
- 从1到1000的数打印出来
- 从1到任意数的平方根
- 打印从1到n的数
- 打印从1到N的数
- 编程计算并输出1到n之间的所有数的平方和立方,n由用户从键盘输入
- 嘻嘻
- 快速排序
- Oracle diary May5 2011
- inux的启动SD卡的格式化方法 [此博文包含图片]
- [OleDbException (0x80004005):] 未指定的错误
- 输出从1到1000的数
- R.java 未直接更新layout中的信息原因之一
- 横竖屏切换时候Activity的生命周期
- glibc strlen 实现
- C#编程之C#基础(六)
- 关于移动支付
- Android 色深 32位支持
- Linux:在VNC中使用SCIM输入法
- 怎样制作中阿拉伯文网页