C语言经典代码问题:汉诺塔问题和青蛙跳台阶的问题

阅读 47

2022-03-11

1.汉诺塔问题

#define _CRT_SECURE_NO_WARNINGS

#include <stdio.h>

void move( char x, char y)

{

printf("%c--->%c\n",x ,y);


}

void Han_n_t(int n, char a, char b, char c)

{

if (1 == n)

 move(a,c);

else

{

 Han_n_t(n - 1, a, c, b);

 move( a, c);

 Han_n_t(n - 1, b, a, c);


}  


}

2.青蛙跳台阶的问题

#define _CRT_SECURE_NO_WARNINGS

#include <stdio.h>

青蛙跳台阶问题

int Steps(int n)
{
if (n == 1)
{
return 1;
}
else if (n == 2)
{
return 2;
}
else
return Steps(n - 1) + Steps(n - 2);
}
int main()
{
int n = 0;
int ret = 0;
printf("请输入台阶数:");
scanf("%d", &n);
ret=Steps(n);
printf("%d\n", ret);
return 0;
}

精彩评论(0)

0 0 举报