VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 8201|回复: 106

[交流] 输出1-n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及..

  [复制链接]
91_avatar_middle
在线会员 发表于 2012-8-15 00:12:08 | 显示全部楼层 |阅读模式
本帖最后由 malliarage699 于 2012-8-15 10:29 编辑

输出1-n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及条件判断语句(A?B:C)。


     前些日子。遇到一人问起这个问题,经过一番纠结,终于得到一解法,发出来与各位交流交流。
     希望有更好的解法。

     现实方法是使用递归函数来代替循环,这个时候面临一个问题就如何获取递归的终止条件,条件语句都无法使用的前提下,考虑通过使用&& 或者 ||实现逻辑短路来控制递归的深度。
游客,如果您要查看本帖隐藏内容请回复


感谢9#的指正。。。已修改。。





上一篇:数据结构1800题,考研必备
下一篇:贪心算法装箱问题
59_avatar_middle
在线会员 发表于 2012-8-15 07:55:50 | 显示全部楼层
看看,多谢分享
23_avatar_middle
在线会员 发表于 2012-8-15 08:44:21 | 显示全部楼层
输出1-n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及..输出1-n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及..
10_avatar_middle
在线会员 发表于 2012-8-15 08:58:57 | 显示全部楼层
程序员面试宝典里好像有这道题。
04_avatar_middle
在线会员 发表于 2012-8-15 09:00:30 | 显示全部楼层
输出1-n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及..好难啊得看看
08_avatar_middle
在线会员 发表于 2012-8-15 09:10:32 | 显示全部楼层
本帖最后由 wangjieest 于 2012-8-15 09:12 编辑

非常感谢分享!支持一下!

语言特性... && 有前面判断为假就不继续后续判断的特性.
|| 有前面判断真就不继续后续判断的特性,
貌似记得一个 用逗号的方法...
91_avatar_middle
ico_lz  楼主| 发表于 2012-8-15 09:21:07 | 显示全部楼层
wangjieest 发表于 2012-8-15 09:10 输出1-n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及..
非常感谢分享!支持一下!

语言特性... && 有前面判断为假就不继续后续判断的特性.

用逗号表达式。。好像使部分语气不执行的情况呢。。
只不过表达式的值是以为最后一个表达式为准的。
91_avatar_middle
ico_lz  楼主| 发表于 2012-8-15 09:21:57 | 显示全部楼层
he_minghao007 发表于 2012-8-15 08:58 输出1-n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及..
程序员面试宝典里好像有这道题。

以前有看过一本程序员宝典。。但是那里面没有这个题。。不晓得是不是因为不是同一本。
22_avatar_middle
在线会员 发表于 2012-8-15 09:50:08 | 显示全部楼层
本帖最后由 LeoSky 于 2012-8-15 10:04 编辑
  1. bool nPrint(int n)
  2. {
  3.     (n-1) && nPrint(n-1);
  4.     printf("%d", n);
  5.         return true;
  6. }

  7. int main(int argc, char* argv[])
  8. {
  9.     int n;
  10.     scanf("%d", &n);
  11.     nPrint(n);
  12.     return 0;
  13. }
复制代码
这样才可以编译的过。哈哈
输出1-n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及..
91_avatar_middle
ico_lz  楼主| 发表于 2012-8-15 10:27:22 | 显示全部楼层
LeoSky 发表于 2012-8-15 09:50 输出1-n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及..
这样才可以编译的过。哈哈

输出1-n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及..呃。对,多谢指正,直接码代码的
63_avatar_middle
在线会员 发表于 2012-8-15 10:34:05 | 显示全部楼层
看看,领教LZ的思路了
25_avatar_middle
在线会员 发表于 2012-8-15 11:30:26 | 显示全部楼层
输出1-n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及..输出1-n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及..
33_avatar_middle
online_vip 发表于 2012-8-15 14:18:42 | 显示全部楼层
嗯 递归!!
17_avatar_middle
在线会员 发表于 2012-8-15 22:48:50 | 显示全部楼层
这个貌似挺简单的
07_avatar_middle
在线会员 发表于 2012-8-15 23:46:17 | 显示全部楼层
输出1-n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及..输出1-n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及..
87_avatar_middle
在线会员 发表于 2012-8-27 15:30:12 | 显示全部楼层
这个问题我也被问到过,呵呵
91_avatar_middle
ico_lz  楼主| 发表于 2012-8-27 16:02:27 | 显示全部楼层
giordano008 发表于 2012-8-27 15:30 输出1-n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及..
这个问题我也被问到过,呵呵

呃。主要是用什么东西来代替判断语句。。
47_avatar_middle
在线会员 发表于 2012-8-27 16:24:37 | 显示全部楼层
看看 比较新奇
91_avatar_middle
ico_lz  楼主| 发表于 2012-8-27 16:39:36 | 显示全部楼层
zjw890924 发表于 2012-8-27 16:24 输出1-n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及..
看看 比较新奇

呃。。。这一般是面试的时候出的蛋疼题
54_avatar_middle
在线会员 发表于 2012-9-1 23:14:25 | 显示全部楼层
输出1-n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及..输出1-n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及..
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号tongdun|网站地图wx_jqr

GMT+8, 2019-3-24 01:37

Powered by Discuz! X3.4

© 2009-2019 cctry.com

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