C語言解決漢諾塔問題
C語言解決漢諾塔問題
#include "stdio.h" void hanoi(int n,char one ,char two,char three); void move(char aa,char bb); int main() { int n; printf("漢諾塔問題,將盤子從a,借助于b移動到c.\n"); printf("請輸入盤子數:"); scanf("%d",&n); printf("移動順序為:\n"); hanoi(n,'a','b','c'); return 0; } //將n個盤子從one借助于two移動到three void hanoi(int n,char one ,char two,char three) { if(n==1) { move(one,three); } else { hanoi(n-1,one,three,two); move(one,three); hanoi(n-1,two,one,three); } }//從a移動到b void move(char a,char b) { printf("%c--->%c\n",a,b); }</pre>
本文由用戶 kdloeki 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!