freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)報(bào)告(用二叉樹(shù)實(shí)現(xiàn)家譜管理系統(tǒng)-文庫(kù)吧

2025-08-06 14:54 本頁(yè)面


【正文】 onamp。 Tname,char* name)。 //從根結(jié)點(diǎn)出發(fā),搜索 name 所在結(jié)點(diǎn) ,如找到,存于 Tname 中,找不到, Tname 為 0 //使用前確保 Tname 指針為 0 void Find(Personamp。T,Person*amp。 Tname,int month,int day)。 //從根結(jié)點(diǎn)出發(fā),搜索家譜中 等于 month, 等于 day 的所有 結(jié) //點(diǎn) ,如找到,存于以 Tname 為首地址的指針數(shù)組中,找不到, Tname 為 0 使用前確 保 //Tname 指針為 0 void Add(Person parent,Person addNode)。 //把 addnode 加為結(jié)點(diǎn) parent 的孩子 void Delete(Personamp。 rootNode)。 //初除以 rootNode 為根結(jié)點(diǎn)的所有結(jié)點(diǎn) void Modify(Personamp。 pNode,Person newValue)。 //修改 pNode 結(jié)點(diǎn)為新值 newValue void SortByBirthday(QuickSortNode* order)。 //對(duì)家譜以出生日期排序,并把排序結(jié)果放在數(shù)組 order 中 void GetPersonNums(Personamp。T,intamp。 personNums)。 //得到家譜中總?cè)藬?shù) int InGenerationPos(Person pNode)。 //返回 pNode 在家譜中是第幾代 int InSiblingPos(Person pNode)。 //返回 pNode 在其兄弟中的排行 int ChildNums(Person pNode)。 //返回 pNode 孩子數(shù) int CompareDate(Date date1,Date date2)。 //比較兩日期的大小 bool IsDateValid(Date date)。 //檢驗(yàn)日期是否合法 Personamp。 GetRoot()。 //得到根結(jié)點(diǎn) friend void SaveNode(FILE* fp,Personamp。 pNode)。 //保存結(jié)點(diǎn) pNode 到文件 fp 中 friend void DestroyNode(Personamp。 pNode)。 //初除結(jié)點(diǎn) private: Person T。 //二叉樹(shù)的根結(jié)點(diǎn) int ReadNode(FILE* fp,Personamp。T,char* parentname)。 //從文件 fp 中讀取信息到結(jié)點(diǎn) T 中,讀取此結(jié)點(diǎn)的父親姓名到 parentnaem 中 (供 CreateFamilytree 函數(shù)調(diào)用 ) void InsertSibling(Personamp。 firstSibling,Person insertSibling)。 //把 insertSibling 揑入到以 firstSibling 為首的兄弟中 (供 CreateFamilytree 函數(shù)調(diào)用 ) void CopyInfoFromBiTreeToArray(Personamp。T,QuickSortNode*amp。order)。 //把家譜中以 pNode 結(jié)點(diǎn)為根結(jié)點(diǎn)的出生日期拷貝到快速排序結(jié)構(gòu)數(shù)組 order 中 (供 SortByBirthday 函數(shù)調(diào)用 ) void QuickSort(QuickSortNode* order,int low,int high)。 //對(duì) order[low...high]中的 記錄迚行快速排序 (供 SortByBirthday 函數(shù)調(diào)用 ) int Partition(QuickSortNode* order,int low,int high)。 //對(duì) order[low..high]中的記錄迚行一次排序 (供 QuickSort 函數(shù)調(diào)用 ) bool IsLeapYear(int year)。 //刞斷是否閏年(供 IsDateValid 調(diào)用,以檢查日期是否合法) }。 7. 根據(jù) MFC 的特點(diǎn),采用 CfamilytreeDlg 類實(shí)現(xiàn)用戶窗口界面指令對(duì)于家譜的各種操作。 class CFamilytreeDlg : public CDialog { public: void SaveTip()。 //保存提示 void InitListCtrl()。 //刜始化列表控件 void RefreshTree()。 //刷新樹(shù), (即刷新顯示 ) void RefreshList()。 //刷新列表 void DisplayFamilytree(Personamp。 pNode)。 //顯示樹(shù) void DisplayInListCtrl(Person pNode)。 //把 pNode 結(jié)點(diǎn)的信息在列 表控件中顯示出來(lái) void Display(CString temp)。 //在列表控件中顯示其他信息 void FindInTree(HTREEITEMamp。 hRootItem,HTREEITEMamp。 hItem,char* name)。 //在樹(shù) hRootItem 中查找 name 所在結(jié)點(diǎn),如找到,把其結(jié)點(diǎn)句柄存入 hItem 中 ,找不到, //hItem 為 ,使用該函數(shù)時(shí),確保 hItem 刜值為 0 void BirthdayTip()。 //每次打開(kāi)一新家譜文件時(shí)的生日提示 void DisplayGenerationInfo(Personamp。 pNode,boolamp。 flag,int count,int generation)。 //顯示所有第 generation 代人的信息 void AddToTree(HTREEITEM hParentItem,Person addnode )。 //把 addnode 加入到樹(shù)的 hParentItem 結(jié)點(diǎn)中去 private: char savepath[MAX_CHARNUM]。 //家譜第一次被保存時(shí)的路徑 bool IsFamilytreeModified。 //家譜是否被修改標(biāo)記 COperationFamilytree operFamilytree。 //對(duì)家譜操作的一個(gè)類實(shí)例,所有的家譜操作均由它調(diào)用成員函數(shù)來(lái)完成 }。 8.為使程序結(jié)構(gòu)趨于清晰,分別使用 CAddInfoDlg、 CBirthdayDlg、 CDelInfoDlg、 CFileOpenAndSaveDlg、 CModifyInfoDlg、 CPers
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1