91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 864KB
    文件類型: .zip
    金幣: 2
    下載: 0 次
    發布日期: 2021-05-10
  • 語言: C/C++
  • 標簽: 漢諾塔??

資源簡介

本人用C語言寫的漢諾塔,采用遞歸的方法,并使用EasyX圖形庫將過程表示出來,內含詳細的注釋,代碼直觀 壓縮包里包含: 1.EasyX圖形庫安裝包,一鍵安裝,支持VC6和VS(VS2015也支持) ; 2.漢諾塔源代碼和可執行文件 。 使用方法: 1.解壓EasyX_20151015(beta),然后打開Setup.hta一鍵安裝圖形庫到VC6或VS ; 2.在VC6或VS中新建一個控制臺工程 ; 3.將源代碼添加到工程中 ; 4.編譯,運行 運行時,按任意鍵開始,按w鍵加速,按s鍵減速,按q鍵暫停 漢諾塔的盤子數可在程序中修改宏定義,初始化為20

資源截圖

代碼片段和文件信息

/*****************?(C)?COPYRIGHT?2016?Panda_Xiao?************************
*?File?Name?????????:?main.cpp
*?Author????????????:?Panda_Xiao
*?Date?First?Issued?:?2016/07/15
*?Description???????:?開發環境?VC++6.0含EasyX圖形庫
*?????????????????????漢諾塔
*
*
*************************************************************************
*?History:
*?
*
************************************************************************/

/*?Includes?-----------------------------------------------------------*/
#include?
#include?
#include?
#include?
#include?

/*?Macro?---------------------------------------------------------------*/

#define??TRUE???????????1
#define??FALSE??????????0

//針的標號
#define??FIRST_NEEDLE???1 //第一根針
#define??SECOND_NEEDLE??2???????//第二根針
#define??THIRD_NEEDLE???3 //第三根針

//盤子的信息
#define??DISH_NUM???????20 //盤子數量
#define??DISH_HIGH??????10 //單個盤子高度
#define??NEEDLE_HIGH????(DISH_HIGH*DISH_NUM*2) //針的高度

//窗口大小
#define??X_GUI_PIX??????(20*DISH_NUM*3+200)
#define??Y_GUI_PIX??????(NEEDLE_HIGH+100)

/*?Typedef?------------------------------------------------------------*/

//盤子的位置信息
typedef?struct??DISH_LOCATION
{
int???needle_num?;
int???needle_location?;
}?Dish_Location?;

//布爾值
typedef??int??BOOL?;

//盤子的信息
typedef?struct??DISH
{
int???dish_rad?;
Dish_Location??dish_location?;

}?Dish;

/*?Variables?----------------------------------------------------------*/
Dish??dish[DISH_NUM]?;
int???move_speed?=?7000?;

/*?Function?prototypes?------------------------------------------------*/
void??InitHanoiTower(void)?;
void??DrawGUI(void)?;
void??DrawDish(Dish?aBOOL?disable)?;
void??MoveHanoiTower(int?move_num??int?start_needle??int?finish_needle)?;
void??MovebaseDish(int?move_num??int?start_needle??int?finish_needle);

/************************************************************************
*?Function?Name ???:?main
*?Create?Date ???:?2016/07/15
*?Author ???:?Panda_Xiao
*?Description ???:?Main?Program
*?Param????????????????????:?None
*?Return?Code??????????????:?None
*?Global?Variable??????????:?None
*?File?Static?Variable?????:?None
*?Function?Static?Variable?:?None
************************************************************************/
int?main(void)
{
initgraph(X_GUI_PIXY_GUI_PIX)?; //初始化窗口大小
cleardevice()?; //清屏
HWND??hWnd?=?GetHWnd()?; //設置窗口標題
SetWindowText(hWnd“漢諾塔“)?;

InitHanoiTower()?; //初始化漢諾塔
DrawGUI()?; //畫出界面

getch()?; //按任意鍵開始

MoveHanoiTower(DISH_NUMFIRST_NEEDLETHIRD_NEEDLE)?; //將盤子從第一根針搬到第三根針

getch(); //按任意鍵退出窗口

return?0?;
}

/************************************************************************
*?Function?Name ???:?InitHanoiTower
*?Create?Date ???:?2016/07/15
*?Author ???:?Panda_Xiao
*?Description ???:?初始化漢諾塔
*?Param????????????????????:?None
*?Return?Code??????????????:?None
*?Global?Variable??

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????814653??2017-01-08?12:46??EasyX_20151015(beta).zip
?????文件????????8823??2017-08-24?09:17??main.cpp
?????文件??????282678??2017-09-22?13:50??漢諾塔.exe

評論

共有 條評論