九连环???!!!

feng_zq 2001-10-05 06:51:41
谁知道九连环的程序怎么编?
...全文
159 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
feng_zq 2001-10-05
  • 打赏
  • 举报
回复
哈哈,我写出来了研究了一晚上

#include<stdio.h>

int times=0;

void off(int);

void on(int n)
{ if(n==1){printf("1 on ");times++;return;}
if(n==0){return;}
on(n-1);
off(n-2);
printf("%d on ",n);
times++;
on(n-2);
}

void off(int n)
{ if(n==1){printf("1 off ");times++;return;}
if(n==0){return;}
off(n-2);
printf("%d off ",n);
times++;
on(n-2);
off(n-1);
}

void main()
{ int n;
scanf("%d",&n);
off(n);
printf("times:%d",times);
}
starsoft007 2001-10-05
  • 打赏
  • 举报
回复
个人觉得有点像汉诺塔
因为都是一样,要拿下或是安上一个
都要把它前面的那些那下来或是安上去
作个递归应该可以吧
DDHuang 2001-10-05
  • 打赏
  • 举报
回复
agree upper
740609 2001-10-05
  • 打赏
  • 举报
回复
递归
luchong2000 2001-10-05
  • 打赏
  • 举报
回复
不会吧,还有程序可编写么
我是会玩这个九连环的,是中国古代的传统玩具嘛
玩起来其实就是二进制的反复重复
而且每次重复都得重复
其结果是步骤成几何级数递增.


Chxis 2001-10-05
  • 打赏
  • 举报
回复
什么来大?

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧