单选题盘子数量是4的汉诺塔问题,需要移动的步数是()A15B16C17D18
单选题
盘子数量是4的汉诺塔问题,需要移动的步数是()
A
15
B
16
C
17
D
18
参考解析
解析:
暂无解析
相关考题:
请用python编程 据说古代有一个梵塔,塔内有3个底座A、B、C,A座上有64个盘子,盘子大小不等,大的在下,小的在上。有一个和尚想把这64个盘子从A座移动到C座,但每次只能允许移动一个盘子。在移动盘子的过程中可以利用B座,但任何时刻3个座上的盘子都必须始终保持大盘在下、小盘在上的顺序。如果只有一个盘子,则不需要利用B座,直接将盘子从A移动到C即可。 编写函数,接收一个表示盘子数量的参数和分别表
阅读以下说明,回答问题1至问题3,将答案填入答题纸对应栏内。【说明】在某嵌入式处理器上,编写以下两段秸序(编译选项中,存储采用4字节对齐方式)。程序段1:struct studentl {char name [10] ;long sno;char sex;float score [4] ;*pl, al, bl;程序段2:union student2 {char name [10] ;long sno;char sex,float score [4] ;*p2, a2, b2;汉诺塔问题说明:有n个盘子在A处,盘子从小到大,最上面的盘予最小,程序要把这n个盘子从A处搬到C处,可以在E处暂存,但任何时候都不能出现大的盘子压在小的盘子上面的情况。下列是一段求解汉诺塔问题的C语言程序。include stdio . hvoid move (int n, char a, char c){static int Step=l;printf (Step %2d: Disk %d %c..-- %c\n, Step, n, a, c) ;Step++;}void Hanoi (int n, char a, char b, cnar c){if (nl){Hanoi (n-l, a, c, b) ;move (n, a. c) ;Hanoi (n-l, b, a, c) ;}else move (n,a,c);}void main(){Hanoi(3, ’A’, 、B’, 、C ’);}【问题1】(3分)C语言函数的一般格式为:函数类型 函数名 (参数列表){函数体;}简答下述问题,将答案填写在答题纸中对应栏目。(l)函数类型的含义是什么?(2)参数列表的含义是什么?(3)C语言函数之间的参数如何传递?【问题2] (6分)回答问题,将答案填写在答题纸中对应栏目。(1)sizeof(struct studentl)结果是多少(2) sizeof(union student2)结果是多少(3)变量a2在程序段2中定义,写出执亍以下语句后的输出结果。strcpy (a2. name,¨zhangwei¨);a2.sex=’f’;printf (%s¨, a2 .name);【问题3](6分)仔细阅读求解汉诺塔问题的C语言程序,完成其中(1)~(4)空白填空,将答案填入答题纸的对应栏内。运行结果为:Step1:Disk l A----CStep 2: (l)Step 3: Disk I C----BStep4: (2)Step 5: (3)Step 6: Disk 2 B----CStep 7: (4)
判断题汉诺塔问题的求解方式,是用分治算法,一步一步计算而得的。A对B错