From af400939139d85e4b18120c2ec3f0f7062073946 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BA=B7=E5=BB=BA=E4=BC=9F?= Date: Fri, 14 Feb 2020 23:25:25 +0800 Subject: [PATCH] =?UTF-8?q?:recycle:=20=E6=9B=B4=E6=96=B0PressEnterToConti?= =?UTF-8?q?nue=E5=87=BD=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CLion/CourseBook/0201_SqList/SqList-main.c | 24 +- CLion/CourseBook/0202_Union/Union.h | 1 - .../CourseBook/0203_MergeSqList/MergeSqList.c | 1 - .../CourseBook/0203_MergeSqList/MergeSqList.h | 1 - .../CourseBook/0204_LinkList/LinkList-main.c | 28 +- .../0206_SLinkList/SLinkList-main.c | 24 +- .../0208_DuLinkList/DuLinkList-main.c | 24 +- .../0209_ELinkList/ELinkList-main.c | 36 +-- .../0211_Polynomial/Polynomial-main.c | 12 +- CLion/CourseBook/0301_SqStack/SqStack-main.c | 28 +- CLion/CourseBook/0306_Hanoi/Hanoi.c | 5 + CLion/CourseBook/0306_Hanoi/Hanoi.h | 6 - .../0307_LinkQueue/LinkQueue-main.c | 28 +- CLion/CourseBook/0308_SqQueue/SqQueue-main.c | 28 +- .../CourseBook/0309_BankQueuing/BankQueuing.c | 27 +- .../CourseBook/0309_BankQueuing/BankQueuing.h | 11 - CLion/CourseBook/0401_SString/SString-main.c | 46 ++-- CLion/CourseBook/0402_HString/HString-main.c | 46 ++-- CLion/CourseBook/0403_LString/LString-main.c | 246 +++++++++--------- CLion/CourseBook/0404_KMP/KMP-main.c | 22 +- CLion/CourseBook/0501_Array/Array-main.c | 8 +- .../CourseBook/0502_TSMatrix/TSMatrix-main.c | 18 +- .../0503_RLSMatrix/RLSMatrix-main.c | 18 +- .../0504_CrossList/CrossList-main.c | 16 +- .../CourseBook/0505_GList-HT/GList-HT-main.c | 36 +-- CLion/CourseBook/0506_GList-E/GList-E-main.c | 36 +-- .../CourseBook/0601_SqBiTree/SqBiTree-main.c | 36 +-- CLion/CourseBook/0602_BiTree/BiTree-main.c | 36 +-- .../0603_BiTriTree/BiTriTree-main.c | 36 +-- .../0604_BiThrTree/BiThrTree-main.c | 2 +- CLion/CourseBook/0605_PTree/PTree-main.c | 36 +-- CLion/CourseBook/0606_CTree/CTree-main.c | 36 +-- CLion/CourseBook/0607_CSTree/CSTree-main.c | 38 +-- CLion/CourseBook/0608_MFSet/MFSet-main.c | 8 +- .../0609_HuffmanTree/HuffmanTree-main.c | 6 +- .../CourseBook/0610_PowerSet/PowerSet-main.c | 6 +- CLion/CourseBook/0611_NQueens/NQueens-main.c | 6 +- CLion/ExerciseBook/02.16-02.18/02.16-02.18.c | 4 +- CLion/ExerciseBook/04.21/04.21.c | 12 +- CLion/ExerciseBook/06.56-06.58/06.56-06.58.c | 6 +- CLion/Status/Status.c | 22 +- CLion/Status/Status.h | 4 +- .../CourseBook/0201_SqList/SqList-main.cpp | 24 +- Dev-C++/CourseBook/0202_Union/Union.h | 3 +- .../0203_MergeSqList/MergeSqList.cpp | 1 - .../CourseBook/0203_MergeSqList/MergeSqList.h | 1 - .../0204_LinkList/LinkList-main.cpp | 28 +- .../0206_SLinkList/SLinkList-main.cpp | 24 +- .../0208_DuLinkList/DuLinkList-main.cpp | 24 +- .../0209_ELinkList/ELinkList-main.cpp | 36 +-- .../0211_Polynomial/Polynomial-main.cpp | 12 +- .../CourseBook/0301_SqStack/SqStack-main.cpp | 28 +- Dev-C++/CourseBook/0306_Hanoi/Hanoi.cpp | 5 + Dev-C++/CourseBook/0306_Hanoi/Hanoi.h | 6 - .../0307_LinkQueue/LinkQueue-main.cpp | 28 +- .../CourseBook/0308_SqQueue/SqQueue-main.cpp | 28 +- .../0309_BankQueuing/BankQueuing.cpp | 23 +- .../CourseBook/0309_BankQueuing/BankQueuing.h | 11 - .../CourseBook/0401_SString/SString-main.cpp | 46 ++-- .../CourseBook/0402_HString/HString-main.cpp | 46 ++-- .../CourseBook/0403_LString/LString-main.cpp | 246 +++++++++--------- Dev-C++/CourseBook/0404_KMP/KMP-main.cpp | 22 +- Dev-C++/CourseBook/0501_Array/Array-main.cpp | 8 +- .../0502_TSMatrix/TSMatrix-main.cpp | 18 +- .../0503_RLSMatrix/RLSMatrix-main.cpp | 18 +- .../0504_CrossList/CrossList-main.cpp | 16 +- .../0505_GList-HT/GList-HT-main.cpp | 36 +-- .../CourseBook/0506_GList-E/GList-E-main.cpp | 36 +-- .../0601_SqBiTree/SqBiTree-main.cpp | 36 +-- .../CourseBook/0602_BiTree/BiTree-main.cpp | 36 +-- .../0603_BiTriTree/BiTriTree-main.cpp | 36 +-- .../0604_BiThrTree/BiThrTree-main.cpp | 2 +- Dev-C++/CourseBook/0605_PTree/PTree-main.cpp | 36 +-- Dev-C++/CourseBook/0606_CTree/CTree-main.cpp | 36 +-- .../CourseBook/0607_CSTree/CSTree-main.cpp | 38 +-- Dev-C++/CourseBook/0608_MFSet/MFSet-main.cpp | 8 +- .../0609_HuffmanTree/HuffmanTree-main.cpp | 6 +- .../0610_PowerSet/PowerSet-main.cpp | 6 +- .../CourseBook/0611_NQueens/NQueens-main.cpp | 6 +- .../ExerciseBook/02.16-02.18/02.16-02.18.cpp | 4 +- Dev-C++/ExerciseBook/04.21/04.21.cpp | 12 +- .../ExerciseBook/06.56-06.58/06.56-06.58.cpp | 6 +- Dev-C++/Status/Status.a | Bin 29426 -> 29546 bytes Dev-C++/Status/Status.cpp | 22 +- Dev-C++/Status/Status.h | 4 +- .../CourseBook/0201_SqList/SqList-main.c | 24 +- VisualC++/CourseBook/0202_Union/Union.h | 1 - .../CourseBook/0203_MergeSqList/MergeSqList.c | 1 - .../CourseBook/0203_MergeSqList/MergeSqList.h | 1 - .../CourseBook/0204_LinkList/LinkList-main.c | 28 +- .../0206_SLinkList/SLinkList-main.c | 24 +- .../0208_DuLinkList/DuLinkList-main.c | 24 +- .../0209_ELinkList/ELinkList-main.c | 36 +-- .../0211_Polynomial/Polynomial-main.c | 12 +- .../CourseBook/0301_SqStack/SqStack-main.c | 28 +- VisualC++/CourseBook/0306_Hanoi/Hanoi.c | 5 + VisualC++/CourseBook/0306_Hanoi/Hanoi.h | 6 - .../0307_LinkQueue/LinkQueue-main.c | 28 +- .../CourseBook/0308_SqQueue/SqQueue-main.c | 28 +- .../CourseBook/0309_BankQueuing/BankQueuing.c | 24 +- .../CourseBook/0309_BankQueuing/BankQueuing.h | 11 - .../CourseBook/0401_SString/SString-main.c | 46 ++-- .../CourseBook/0402_HString/HString-main.c | 46 ++-- .../CourseBook/0403_LString/LString-main.c | 246 +++++++++--------- VisualC++/CourseBook/0404_KMP/KMP-main.c | 22 +- VisualC++/CourseBook/0501_Array/Array-main.c | 8 +- .../CourseBook/0502_TSMatrix/TSMatrix-main.c | 18 +- .../0503_RLSMatrix/RLSMatrix-main.c | 18 +- .../0504_CrossList/CrossList-main.c | 16 +- .../CourseBook/0505_GList-HT/GList-HT-main.c | 36 +-- .../CourseBook/0506_GList-E/GList-E-main.c | 36 +-- .../CourseBook/0601_SqBiTree/SqBiTree-main.c | 36 +-- .../CourseBook/0602_BiTree/BiTree-main.c | 36 +-- .../0603_BiTriTree/BiTriTree-main.c | 36 +-- .../0604_BiThrTree/BiThrTree-main.c | 2 +- VisualC++/CourseBook/0605_PTree/PTree-main.c | 36 +-- VisualC++/CourseBook/0606_CTree/CTree-main.c | 36 +-- .../CourseBook/0607_CSTree/CSTree-main.c | 36 +-- VisualC++/CourseBook/0608_MFSet/MFSet-main.c | 8 +- .../0609_HuffmanTree/HuffmanTree-main.c | 6 +- .../CourseBook/0610_PowerSet/PowerSet-main.c | 6 +- .../CourseBook/0611_NQueens/NQueens-main.c | 6 +- VisualC++/CourseBook/CourseBook.sdf | Bin 4476928 -> 4476928 bytes VisualC++/CourseBook/CourseBook.suo | Bin 160768 -> 161280 bytes .../ExerciseBook/02.16-02.18/02.16-02.18.c | 4 +- VisualC++/ExerciseBook/04.21/04.21.c | 12 +- .../ExerciseBook/06.56-06.58/06.56-06.58.c | 6 +- VisualC++/ExerciseBook/ExerciseBook.sdf | Bin 6836224 -> 6836224 bytes VisualC++/ExerciseBook/ExerciseBook.suo | Bin 303616 -> 303616 bytes VisualC++/Status/Status.c | 22 +- VisualC++/Status/Status.h | 4 +- VisualC++/Status/Status.lib | Bin 11230 -> 11598 bytes VisualC++/Status/Status.sdf | Bin 1921024 -> 1921024 bytes VisualC++/Status/Status.suo | Bin 10752 -> 10240 bytes 134 files changed, 1581 insertions(+), 1622 deletions(-) diff --git a/CLion/CourseBook/0201_SqList/SqList-main.c b/CLion/CourseBook/0201_SqList/SqList-main.c index e61e920..359e145 100644 --- a/CLion/CourseBook/0201_SqList/SqList-main.c +++ b/CLion/CourseBook/0201_SqList/SqList-main.c @@ -23,7 +23,7 @@ int main(int argc, char** argv) { printf("█ 初始化顺序表 L ...\n"); InitList(&L); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ListEmpty \n"); @@ -34,7 +34,7 @@ int main(int argc, char** argv) { printf("█ L 不为空!\n"); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ListInsert \n"); @@ -44,7 +44,7 @@ int main(int argc, char** argv) { ListInsert(&L, i, 2 * i); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ListTraverse \n"); @@ -52,7 +52,7 @@ int main(int argc, char** argv) { printf("█ L 中的元素为:L = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ListLength \n"); @@ -60,7 +60,7 @@ int main(int argc, char** argv) { i = ListLength(L); printf("█ L 的长度为 %d \n", i); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ListDelete \n"); @@ -79,7 +79,7 @@ int main(int argc, char** argv) { printf("█ 删除后的元素:L = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ GetElem \n"); @@ -87,7 +87,7 @@ int main(int argc, char** argv) { GetElem(L, 4, &e); printf("█ L 中第 4 个位置的元素为 \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ LocateElem \n"); @@ -95,7 +95,7 @@ int main(int argc, char** argv) { i = LocateElem(L, 7, CmpGreater); printf("█ L 中第一个元素值大于 \"7\" 的元素是 \"%d\" \n", L.elem[i - 1]); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ PriorElem \n"); @@ -108,7 +108,7 @@ int main(int argc, char** argv) { printf("█ 元素 \"%d\" 的前驱不存在!\n", cur_e); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ NextElem \n"); @@ -121,7 +121,7 @@ int main(int argc, char** argv) { printf("█ 元素 \"%d\" 的后继不存在!\n", cur_e); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ClearList \n"); @@ -142,7 +142,7 @@ int main(int argc, char** argv) { printf(" L 不为空!\n"); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ DestroyList \n"); @@ -163,7 +163,7 @@ int main(int argc, char** argv) { printf(" L 不存在!!\n"); } } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; diff --git a/CLion/CourseBook/0202_Union/Union.h b/CLion/CourseBook/0202_Union/Union.h index 1000f6a..bcbf3d4 100644 --- a/CLion/CourseBook/0202_Union/Union.h +++ b/CLion/CourseBook/0202_Union/Union.h @@ -11,7 +11,6 @@ #include "Status.h" //**▲01 绪论**// #include "SqList.h" //**▲02 线性表**// - /* * ████████ 算法2.1 ████████ * diff --git a/CLion/CourseBook/0203_MergeSqList/MergeSqList.c b/CLion/CourseBook/0203_MergeSqList/MergeSqList.c index 62e59a7..8c05b41 100644 --- a/CLion/CourseBook/0203_MergeSqList/MergeSqList.c +++ b/CLion/CourseBook/0203_MergeSqList/MergeSqList.c @@ -6,7 +6,6 @@ #include "MergeSqList.h" //**▲02 线性表**// - /* * ████████ 算法2.2 ████████ * diff --git a/CLion/CourseBook/0203_MergeSqList/MergeSqList.h b/CLion/CourseBook/0203_MergeSqList/MergeSqList.h index 2943778..6f8869c 100644 --- a/CLion/CourseBook/0203_MergeSqList/MergeSqList.h +++ b/CLion/CourseBook/0203_MergeSqList/MergeSqList.h @@ -11,7 +11,6 @@ #include #include "SqList.h" //**▲02 线性表**// - /* * ████████ 算法2.2 ████████ * diff --git a/CLion/CourseBook/0204_LinkList/LinkList-main.c b/CLion/CourseBook/0204_LinkList/LinkList-main.c index ea2c584..cb97ff2 100644 --- a/CLion/CourseBook/0204_LinkList/LinkList-main.c +++ b/CLion/CourseBook/0204_LinkList/LinkList-main.c @@ -23,14 +23,14 @@ int main(int argc, char** argv) { printf("█ 初始化单链表 L ...\n"); InitList(&L); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ListEmpty \n"); { ListEmpty(L) ? printf("█ L 为空!!\n") : printf("█ L 不为空!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ListInsert \n"); @@ -40,7 +40,7 @@ int main(int argc, char** argv) { ListInsert(L, i, 2 * i); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ListTraverse \n"); @@ -48,14 +48,14 @@ int main(int argc, char** argv) { printf("█ L 中的元素为:L = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ListLength \n"); { printf("█ L 的长度为 %d \n", ListLength(L)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ListDelete \n"); @@ -74,7 +74,7 @@ int main(int argc, char** argv) { printf("█ 删除后的元素:L = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ GetElem \n"); @@ -82,7 +82,7 @@ int main(int argc, char** argv) { GetElem(L, 4, &e); printf("█ L 中第 4 个位置的元素为 \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ LocateElem \n"); @@ -91,7 +91,7 @@ int main(int argc, char** argv) { GetElem(L, i, &e); printf("█ L 中第一个元素值大于 \"7\" 的元素是 \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ PriorElem \n"); @@ -104,7 +104,7 @@ int main(int argc, char** argv) { printf("█ 元素 \"%d\" 的前驱不存在!\n", cur_e); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ NextElem \n"); @@ -117,7 +117,7 @@ int main(int argc, char** argv) { printf("█ 元素 \"%d\" 的后继不存在!\n", cur_e); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ClearList \n"); @@ -130,7 +130,7 @@ int main(int argc, char** argv) { printf("█ 清空 L 后:"); ListEmpty(L) ? printf(" L 为空!!\n") : printf(" L 不为空!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ DestroyList \n"); @@ -143,7 +143,7 @@ int main(int argc, char** argv) { printf("█ 销毁 L 后:"); L ? printf(" L 存在!\n") : printf(" L 不存在!!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ CreateList_Head \n"); @@ -153,7 +153,7 @@ int main(int argc, char** argv) { printf("█ 头插法建立单链表 L = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ CreateList_Tail \n"); @@ -163,7 +163,7 @@ int main(int argc, char** argv) { printf("█ 尾插法建立单链表 L = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/CLion/CourseBook/0206_SLinkList/SLinkList-main.c b/CLion/CourseBook/0206_SLinkList/SLinkList-main.c index 5d3f74b..0579f09 100644 --- a/CLion/CourseBook/0206_SLinkList/SLinkList-main.c +++ b/CLion/CourseBook/0206_SLinkList/SLinkList-main.c @@ -25,14 +25,14 @@ int main(int argc, char** argv) { printf("█ 初始化单链表 S ...\n"); InitList(space, &S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ListEmpty \n"); { ListEmpty(space, S) ? printf("█ S 为空!!\n") : printf("█ S 不为空!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ListInsert \n"); @@ -42,7 +42,7 @@ int main(int argc, char** argv) { ListInsert(space, S, i, 2 * i); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ListTraverse \n"); @@ -50,14 +50,14 @@ int main(int argc, char** argv) { printf("█ S 中的元素为:S = "); ListTraverse(space, S, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ListLength \n"); { printf("█ S 的长度为 %d \n", ListLength(space, S)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ListDelete \n"); @@ -76,7 +76,7 @@ int main(int argc, char** argv) { printf("█ 删除后的元素:S = "); ListTraverse(space, S, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ GetElem \n"); @@ -84,7 +84,7 @@ int main(int argc, char** argv) { GetElem(space, S, 4, &e); printf("█ S 中第 4 个位置的元素为 \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ LocateElem \n"); @@ -93,7 +93,7 @@ int main(int argc, char** argv) { GetElem(space, S, i, &e); printf("█ S 中第一个元素值大于 \"7\" 的元素是 \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ PriorElem \n"); @@ -106,7 +106,7 @@ int main(int argc, char** argv) { printf("█ 元素 \"%d\" 的前驱不存在!\n", cur_e); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ NextElem \n"); @@ -119,7 +119,7 @@ int main(int argc, char** argv) { printf("█ 元素 \"%d\" 的后继不存在!\n", cur_e); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ClearList \n"); @@ -132,7 +132,7 @@ int main(int argc, char** argv) { printf("█ 清空 S 后:"); ListEmpty(space, S) ? printf(" S 为空!!\n") : printf(" S 不为空!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ DestroyList \n"); @@ -145,7 +145,7 @@ int main(int argc, char** argv) { printf("█ 销毁 S 后:"); S!=0 ? printf(" S 存在!\n") : printf(" S 不存在!!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/CLion/CourseBook/0208_DuLinkList/DuLinkList-main.c b/CLion/CourseBook/0208_DuLinkList/DuLinkList-main.c index 8d8ae65..5ee7fe5 100644 --- a/CLion/CourseBook/0208_DuLinkList/DuLinkList-main.c +++ b/CLion/CourseBook/0208_DuLinkList/DuLinkList-main.c @@ -23,14 +23,14 @@ int main(int argc, char** argv) { printf("█ 初始化双向循环链表 L ...\n"); InitList(&L); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ListEmpty \n"); { ListEmpty(L) ? printf("█ L 为空!!\n") : printf("█ L 不为空!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ListInsert \n"); @@ -40,7 +40,7 @@ int main(int argc, char** argv) { ListInsert(L, i, 2 * i); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ListTraverse \n"); @@ -48,14 +48,14 @@ int main(int argc, char** argv) { printf("█ L 中的元素为:L = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ListLength \n"); { printf("█ L 的长度为 %d \n", ListLength(L)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ListDelete \n"); @@ -74,7 +74,7 @@ int main(int argc, char** argv) { printf("█ 删除后的元素:L = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ GetElem \n"); @@ -82,7 +82,7 @@ int main(int argc, char** argv) { GetElem(L, 4, &e); printf("█ L 中第 4 个位置的元素为 \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ LocateElem \n"); @@ -91,7 +91,7 @@ int main(int argc, char** argv) { GetElem(L, i, &e); printf("█ L 中第一个元素值大于 \"7\" 的元素是 \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ PriorElem \n"); @@ -104,7 +104,7 @@ int main(int argc, char** argv) { printf("█ 元素 \"%d\" 的前驱不存在!\n", cur_e); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ NextElem \n"); @@ -117,7 +117,7 @@ int main(int argc, char** argv) { printf("█ 元素 \"%d\" 的后继不存在!\n", cur_e); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ClearList \n"); @@ -130,7 +130,7 @@ int main(int argc, char** argv) { printf("█ 清空 L 后:"); ListEmpty(L) ? printf(" L 为空!!\n") : printf(" L 不为空!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ DestroyList \n"); @@ -143,7 +143,7 @@ int main(int argc, char** argv) { printf("█ 销毁 L 后:"); L ? printf(" L 存在!\n") : printf(" L 不存在!!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/CLion/CourseBook/0209_ELinkList/ELinkList-main.c b/CLion/CourseBook/0209_ELinkList/ELinkList-main.c index a6ec568..87a84d0 100644 --- a/CLion/CourseBook/0209_ELinkList/ELinkList-main.c +++ b/CLion/CourseBook/0209_ELinkList/ELinkList-main.c @@ -24,14 +24,14 @@ int main(int argc, char** argv) { printf("█ 初始化扩展的线性链表 L ...\n"); InitList(&L); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ListEmpty \n"); { ListEmpty(L) ? printf("█ L 为空!!\n") : printf("█ L 不为空!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ListInsert \n"); @@ -41,7 +41,7 @@ int main(int argc, char** argv) { ListInsert(&L, i, 2 * i); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ListTraverse \n"); @@ -49,14 +49,14 @@ int main(int argc, char** argv) { printf("█ L 中的元素为:L = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ListLength \n"); { printf("█ L 的长度为 %d \n", ListLength(L)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ListDelete \n"); @@ -75,7 +75,7 @@ int main(int argc, char** argv) { printf("█ 删除后的元素:L = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ LocateElem \n"); @@ -83,7 +83,7 @@ int main(int argc, char** argv) { r = LocateElem(L, 7, CmpGreater); printf("█ L 中第一个元素值大于 \"7\" 的元素是 \"%d\" \n", r->data); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ PriorElem \n"); @@ -96,7 +96,7 @@ int main(int argc, char** argv) { printf("█ 元素 \"%d\" 的前驱不存在!\n", r->data); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ NextElem \n"); @@ -109,7 +109,7 @@ int main(int argc, char** argv) { printf("█ 元素 \"%d\" 的后继不存在!\n", r->data); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ MakeNode \n"); @@ -121,7 +121,7 @@ int main(int argc, char** argv) { printf("█ 创建结点 \"300\" ...\n"); MakeNode(&s, 300); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ InsFirst \n"); @@ -131,7 +131,7 @@ int main(int argc, char** argv) { printf("█ L 中的元素为:L = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ DelFirst \n"); @@ -142,7 +142,7 @@ int main(int argc, char** argv) { printf("█ L 中的元素为:L = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ InsBefore \n"); @@ -154,7 +154,7 @@ int main(int argc, char** argv) { printf("█ L 中的元素为:L = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ InsAfter \n"); @@ -166,7 +166,7 @@ int main(int argc, char** argv) { printf("█ L 中的元素为:L = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Append \n"); @@ -179,7 +179,7 @@ int main(int argc, char** argv) { printf("█ L 中的元素为:L = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Remove \n"); @@ -190,7 +190,7 @@ int main(int argc, char** argv) { printf("█ L 中的元素为:L = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ClearList \n"); @@ -203,7 +203,7 @@ int main(int argc, char** argv) { printf("清空 L 后:"); ListEmpty(L) ? printf(" L 为空!!\n") : printf(" L 不为空!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ DestroyList \n"); @@ -217,7 +217,7 @@ int main(int argc, char** argv) { L.head != NULL && L.tail != NULL ? printf(" L 存在!\n") : printf(" L 不存在!!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/CLion/CourseBook/0211_Polynomial/Polynomial-main.c b/CLion/CourseBook/0211_Polynomial/Polynomial-main.c index ebe78e2..79e456b 100644 --- a/CLion/CourseBook/0211_Polynomial/Polynomial-main.c +++ b/CLion/CourseBook/0211_Polynomial/Polynomial-main.c @@ -15,7 +15,7 @@ int main(int argc, char **argv) { printf("█ 作为示范,创建项数为 %d 的多项式Pb...\n", n); CreatPolyn(&Pb, n, "TestData_Pb.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ PrintPolyn \n"); @@ -26,14 +26,14 @@ int main(int argc, char **argv) { printf("█ 一元多项式 Pb = "); PrintPolyn(Pb); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ PolynLength \n"); { printf("█ La 的项数为 %d ,Lb 的项数为 %d\n", PolynLength(Pa), PolynLength(Pb)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ AddPolyn \n"); @@ -46,7 +46,7 @@ int main(int argc, char **argv) { printf("█ Pa = Pa + Pb = "); PrintPolyn(Pa); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ SubtractPolyn \n"); @@ -59,7 +59,7 @@ int main(int argc, char **argv) { printf("█ Pa = Pa - Pb = "); PrintPolyn(Pa); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ MultiplyPolyn \n"); @@ -72,7 +72,7 @@ int main(int argc, char **argv) { printf("█ Pa = Pa * Pb = "); PrintPolyn(Pa); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/CLion/CourseBook/0301_SqStack/SqStack-main.c b/CLion/CourseBook/0301_SqStack/SqStack-main.c index 5ce58a5..e245cbb 100644 --- a/CLion/CourseBook/0301_SqStack/SqStack-main.c +++ b/CLion/CourseBook/0301_SqStack/SqStack-main.c @@ -2,7 +2,10 @@ #include "SqStack.h" //**▲03 栈和队列**// // 测试函数,打印元素 -void PrintElem(SElemType e); +void PrintElem(SElemType e) { + printf("%d ", e); +} + int main(int argc, char** argv) { SqStack S; @@ -14,13 +17,13 @@ int main(int argc, char** argv) { printf("█ 初始化顺序栈 S ...\n"); InitStack(&S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 StackEmpty \n"); { StackEmpty(S) ? printf("█ S 为空!!\n") : printf("█ S 不为空!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 Push \n"); { @@ -29,21 +32,21 @@ int main(int argc, char** argv) { printf("█ 将 \"%2d\" 压入栈 S ...\n", 2 * i); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 StackTraverse \n"); { printf("█ S 中的元素为:S = "); StackTraverse(S, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 StackLength \n"); { i = StackLength(S); printf("█ S 的长度为 %d \n", i); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 Pop \n"); { @@ -52,14 +55,14 @@ int main(int argc, char** argv) { printf("█ S 中的元素为:S = "); StackTraverse(S, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 GetTop \n"); { GetTop(S, &e); printf("█ 栈顶元素的值为 \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 ClearStack \n"); { @@ -71,7 +74,7 @@ int main(int argc, char** argv) { printf("█ 清空 S 后:"); StackEmpty(S) ? printf(" S 为空!!\n") : printf(" S 不为空!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 DestroyStack \n"); { @@ -83,12 +86,7 @@ int main(int argc, char** argv) { printf("█ 销毁 S 后:"); S.base != NULL && S.top != NULL ? printf(" S 存在!\n") : printf(" S 不存在!!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } - -// 测试函数,打印元素 -void PrintElem(SElemType e) { - printf("%d ", e); -} diff --git a/CLion/CourseBook/0306_Hanoi/Hanoi.c b/CLion/CourseBook/0306_Hanoi/Hanoi.c index 0f4f83e..692b22e 100644 --- a/CLion/CourseBook/0306_Hanoi/Hanoi.c +++ b/CLion/CourseBook/0306_Hanoi/Hanoi.c @@ -6,6 +6,11 @@ #include "Hanoi.h" //**03 栈和队列**// +/* 全局变量 */ +Tower T; // 汉诺塔 +int gStep; // 统计移动步数 + + /* * ████████ 算法3.5 ████████ * diff --git a/CLion/CourseBook/0306_Hanoi/Hanoi.h b/CLion/CourseBook/0306_Hanoi/Hanoi.h index 7ebdaec..cda4519 100644 --- a/CLion/CourseBook/0306_Hanoi/Hanoi.h +++ b/CLion/CourseBook/0306_Hanoi/Hanoi.h @@ -19,12 +19,6 @@ typedef struct { int high[3]; // 三座塔的高度(持有的盘子数量) } Tower; -// 汉诺塔 -Tower T; - -// 统计移动步数 -int gStep; - /* * ████████ 算法3.5 ████████ diff --git a/CLion/CourseBook/0307_LinkQueue/LinkQueue-main.c b/CLion/CourseBook/0307_LinkQueue/LinkQueue-main.c index c1c6838..9ab2f4b 100644 --- a/CLion/CourseBook/0307_LinkQueue/LinkQueue-main.c +++ b/CLion/CourseBook/0307_LinkQueue/LinkQueue-main.c @@ -2,7 +2,10 @@ #include "LinkQueue.h" //**03 栈和队列**// // 测试函数,打印整型 -void PrintElem(QElemType e); +void PrintElem(QElemType e) { + printf("%d ", e); +} + int main(int argc, char** argv) { LinkQueue Q; @@ -14,13 +17,13 @@ int main(int argc, char** argv) { printf("█ 初始化链队 Q ...\n"); InitQueue(&Q); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 QueueEmpty \n"); { QueueEmpty(Q) ? printf("█ Q 为空!!\n") : printf("█ Q 不为空!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 EnQueue \n"); { @@ -29,21 +32,21 @@ int main(int argc, char** argv) { printf("█ 元素 \"%2d\" 入队...\n", 2 * i); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 QueueTraverse \n"); { printf("█ Q 中的元素为:Q = "); QueueTraverse(Q, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 QueueLength \n"); { i = QueueLength(Q); printf("█ Q 的长度为 %d \n", i); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 DeQueue \n"); { @@ -52,14 +55,14 @@ int main(int argc, char** argv) { printf("█ Q 中的元素为:Q = "); QueueTraverse(Q, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 GetHead \n"); { GetHead(Q, &e); printf("█ 队头元素的值为 \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 ClearQueue \n"); { @@ -71,7 +74,7 @@ int main(int argc, char** argv) { printf("█ 清空 Q 后:"); QueueEmpty(Q) ? printf(" Q 为空!!\n") : printf(" Q 不为空!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 DestroyQueue \n"); { @@ -83,12 +86,7 @@ int main(int argc, char** argv) { printf("█ 销毁 Q 后:"); Q.front != NULL && Q.rear != NULL ? printf(" Q 存在!\n") : printf(" Q 不存在!!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } - -// 测试函数,打印整型 -void PrintElem(QElemType e) { - printf("%d ", e); -} diff --git a/CLion/CourseBook/0308_SqQueue/SqQueue-main.c b/CLion/CourseBook/0308_SqQueue/SqQueue-main.c index 86cf08b..64e3b9a 100644 --- a/CLion/CourseBook/0308_SqQueue/SqQueue-main.c +++ b/CLion/CourseBook/0308_SqQueue/SqQueue-main.c @@ -2,7 +2,10 @@ #include "SqQueue.h" //**▲03 栈和队列**// // 测试函数,打印整型 -void PrintElem(QElemType e); +void PrintElem(QElemType e) { + printf("%d ", e); +} + int main(int argc, char** argv) { SqQueue Q; @@ -14,13 +17,13 @@ int main(int argc, char** argv) { printf("█ 初始化循环顺序队列 Q ...\n"); InitQueue(&Q); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 QueueEmpty \n"); { QueueEmpty(Q) ? printf("█ Q 为空!!\n") : printf("█ Q 不为空!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 EnQueue \n"); { @@ -29,21 +32,21 @@ int main(int argc, char** argv) { printf("█ 元素 \"%2d\" 入队Q...\n", 2 * i); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 QueueTraverse \n"); { printf("█ Q 中的元素为:Q = "); QueueTraverse(Q, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 QueueLength \n"); { i = QueueLength(Q); printf("█ Q 的长度为 %d \n", i); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 DeQueue \n"); { @@ -52,14 +55,14 @@ int main(int argc, char** argv) { printf("█ Q 中的元素为:Q = "); QueueTraverse(Q, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 GetHead \n"); { GetHead(Q, &e); printf("█ 队头元素的值为 \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 ClearQueue \n"); { @@ -71,7 +74,7 @@ int main(int argc, char** argv) { printf("█ 清空 Q 后:"); QueueEmpty(Q) ? printf(" Q 为空!!\n") : printf(" Q 不为空!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 DestroyQueue \n"); { @@ -83,12 +86,7 @@ int main(int argc, char** argv) { printf("█ 销毁 Q 后:"); Q.base != NULL ? printf(" Q 存在!\n") : printf(" Q 不存在!!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } - -// 测试函数,打印整型 -void PrintElem(QElemType e) { - printf("%d ", e); -} diff --git a/CLion/CourseBook/0309_BankQueuing/BankQueuing.c b/CLion/CourseBook/0309_BankQueuing/BankQueuing.c index d455747..ecf3281 100644 --- a/CLion/CourseBook/0309_BankQueuing/BankQueuing.c +++ b/CLion/CourseBook/0309_BankQueuing/BankQueuing.c @@ -9,13 +9,24 @@ #include "BankQueuing.h" //**▲03 栈和队列**// +/* 全局变量(变量名称前面都加了g标记) */ +int gTotalTime; // 累计客户数 +int gCustomerNum; // 累计客户逗留时间 + +int gCloseTime; // 关门时间,假设银行每天营业8小时,480分 + +EventList gEv; // 事件表,存储所有待处理事件 +Event gEn; // 当前正在处理的事件 + +LinkQueue gQ[N+1]; // 4个客户队列,0号单元弃用 + + /* * ████████ 算法3.6 ████████ * * 银行业务模拟,统计一天内客户在银行逗留的平均时间 */ -void Bank_Simulation_1() -{ +void Bank_Simulation_1() { char eventType; OpenForDay(); // 银行开门 @@ -165,7 +176,7 @@ void CustomerArrived() { // 当前客户进入最短队列排队 EnQueue(&gQ[i], customer); - printf("第%3d个客户到队列 %d 中排队...\n", customer.Count, i); + printf("第%3d个客户到柜台 %d 中排队...\n", customer.Count, i); Show(); /* @@ -189,7 +200,7 @@ void CustomerDeparture() { // 第i个队列的队头客户完成业务并出队 DeQueue(&gQ[i], &customer); - printf("第%3d个客户从队列 %d 中离开...\n", customer.Count, i); + printf("第%3d个客户从柜台 %d 中离开...\n", customer.Count, i); Show(); // 累计客户逗留时间 @@ -308,16 +319,16 @@ void Show() { for(p = gQ[i].front; p; p = p->next) { if(p == gQ[i].front) { if(i == 1) { - printf("柜台①●"); + printf("柜台⑴●"); } if(i == 2) { - printf("柜台②●"); + printf("柜台⑵●"); } if(i == 3) { - printf("柜台③●"); + printf("柜台⑶●"); } if(i == 4) { - printf("柜台④●"); + printf("柜台⑷●"); } } else { printf("(%03d)", p->data.Count); diff --git a/CLion/CourseBook/0309_BankQueuing/BankQueuing.h b/CLion/CourseBook/0309_BankQueuing/BankQueuing.h index 18c4bab..0e2c6fb 100644 --- a/CLion/CourseBook/0309_BankQueuing/BankQueuing.h +++ b/CLion/CourseBook/0309_BankQueuing/BankQueuing.h @@ -23,17 +23,6 @@ /* 类型定义 */ typedef LinkList EventList; //事件链表类型,定义为有序链表 -/* 全局变量(变量名称前面都加了g标记) */ -int gTotalTime; // 累计客户数 -int gCustomerNum; // 累计客户逗留时间 - -int gCloseTime; // 关门时间,假设银行每天营业8小时,480分 - -EventList gEv; // 事件表,存储所有待处理事件 -Event gEn; // 当前正在处理的事件 - -LinkQueue gQ[N+1]; // 4个客户队列,0号单元弃用 - /* * ████████ 算法3.6 ████████ diff --git a/CLion/CourseBook/0401_SString/SString-main.c b/CLion/CourseBook/0401_SString/SString-main.c index f6c4199..677e570 100644 --- a/CLion/CourseBook/0401_SString/SString-main.c +++ b/CLion/CourseBook/0401_SString/SString-main.c @@ -2,7 +2,16 @@ #include "SString.h" //**▲04 串**// // 测试函数,打印字符串 -void PrintElem(SString S); +void PrintElem(SString S) { + int i; + + for(i = 1; i <= S[0]; i++) { + printf("%c", S[i]); + } + + printf("\n"); +} + int main(int argc, char** argv) { char* chars = "01234567899876543210"; @@ -16,20 +25,20 @@ int main(int argc, char** argv) { printf("█ S = "); PrintElem(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ StrEmpty \n"); { StrEmpty(S) ? printf("█ S 为空!!\n") : printf("█ S 不为空!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ StrLength \n"); { i = StrLength(S); printf("█ S 的长度为 %d \n", i); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ StrCopy \n"); { @@ -38,7 +47,7 @@ int main(int argc, char** argv) { printf("█ T = "); PrintElem(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ StrCompare \n"); { @@ -46,7 +55,7 @@ int main(int argc, char** argv) { i = StrCompare(S, T); i == 0 ? printf("█ S==T\n") : (i < 0 ? printf("█ ST\n")); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ StrInsert \n"); { @@ -56,7 +65,7 @@ int main(int argc, char** argv) { printf("█ S = "); PrintElem(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Index \n"); { @@ -65,7 +74,7 @@ int main(int argc, char** argv) { i = Index_1(S, T, 1); printf("█ 串 \"*****\" 在 S 中第一次出现的位置为 %d \n", i); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ SubString \n"); { @@ -74,7 +83,7 @@ int main(int argc, char** argv) { printf("█ Sub = "); PrintElem(sub); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Replace \n"); { @@ -85,7 +94,7 @@ int main(int argc, char** argv) { printf("█ S = "); PrintElem(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ StrDelete \n"); { @@ -94,7 +103,7 @@ int main(int argc, char** argv) { printf("█ S = "); PrintElem(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ClearString \n"); { @@ -106,7 +115,7 @@ int main(int argc, char** argv) { printf("█ 清空 S 后:"); StrEmpty(S) ? printf(" S 为空!!\n") : printf(" S 不为空!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Concat \n"); { @@ -120,18 +129,7 @@ int main(int argc, char** argv) { printf("█ Tmp = "); PrintElem(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } - -// 测试函数,打印字符串 -void PrintElem(SString S) { - int i; - - for(i = 1; i <= S[0]; i++) { - printf("%c", S[i]); - } - - printf("\n"); -} diff --git a/CLion/CourseBook/0402_HString/HString-main.c b/CLion/CourseBook/0402_HString/HString-main.c index 56dca2f..e0626f8 100644 --- a/CLion/CourseBook/0402_HString/HString-main.c +++ b/CLion/CourseBook/0402_HString/HString-main.c @@ -2,7 +2,16 @@ #include "HString.h" //**▲04 串**// // 测试函数,打印字符串 -void PrintElem(HString S); +void PrintElem(HString S) { + int i; + + for(i = 0; i <= S.length-1; i++) { + printf("%c", S.ch[i]); + } + + printf("\n"); +} + int main(int argc, char** argv) { char* chars = "01234567899876543210"; @@ -16,20 +25,20 @@ int main(int argc, char** argv) { printf("█ S = "); PrintElem(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ StrEmpty \n"); { StrEmpty(S) ? printf("█ S 为空!!\n") : printf("█ S 不为空!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ StrLength \n"); { i = StrLength(S); printf("█ S 的长度为 %d \n", i); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ StrCopy \n"); { @@ -38,7 +47,7 @@ int main(int argc, char** argv) { printf("█ T = "); PrintElem(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ StrCompare \n"); { @@ -46,7 +55,7 @@ int main(int argc, char** argv) { i = StrCompare(S, T); i == 0 ? printf("█ S==T\n") : (i < 0 ? printf("█ ST\n")); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ StrInsert \n"); { @@ -56,7 +65,7 @@ int main(int argc, char** argv) { printf("█ S = "); PrintElem(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Index \n"); { @@ -65,7 +74,7 @@ int main(int argc, char** argv) { i = Index(S, T, 1); printf("█ 串 \"*****\" 在 S 中第一次出现的位置为 %d \n", i); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ SubString \n"); { @@ -74,7 +83,7 @@ int main(int argc, char** argv) { printf("█ Sub = "); PrintElem(sub); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Replace \n"); { @@ -85,7 +94,7 @@ int main(int argc, char** argv) { printf("█ S = "); PrintElem(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ StrDelete \n"); { @@ -94,7 +103,7 @@ int main(int argc, char** argv) { printf("█ S = "); PrintElem(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ClearString \n"); { @@ -106,7 +115,7 @@ int main(int argc, char** argv) { printf("█ 清空 S 后:"); StrEmpty(S) ? printf(" S 为空!!\n") : printf(" S 不为空!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Concat \n"); { @@ -120,18 +129,7 @@ int main(int argc, char** argv) { printf("█ Tmp = "); PrintElem(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } - -// 测试函数,打印字符串 -void PrintElem(HString S) { - int i; - - for(i = 0; i <= S.length-1; i++) { - printf("%c", S.ch[i]); - } - - printf("\n"); -} diff --git a/CLion/CourseBook/0403_LString/LString-main.c b/CLion/CourseBook/0403_LString/LString-main.c index fda3807..de920b6 100644 --- a/CLion/CourseBook/0403_LString/LString-main.c +++ b/CLion/CourseBook/0403_LString/LString-main.c @@ -1,129 +1,5 @@ #include "LString.h" //**▲04 串**// -// 测试函数,打印字符串 -void PrintElem(LString S); - -int main(int argc, char** argv) { - char* chars = "01234567899876543210"; - LString S, T, sub, V; - int i; - - printf("████████ StrAssign \n"); - { - printf("█ 为块链串 S 赋值...\n"); - StrAssign(&S, chars); - printf("█ S = "); - PrintElem(S); - } - PressEnterToContinue(); - - printf("████████ StrEmpty \n"); - { - StrEmpty(S) ? printf("█ S 为空!!\n") : printf("█ S 不为空!\n"); - } - PressEnterToContinue(); - - printf("████████ StrLength \n"); - { - i = StrLength(S); - printf("█ S 的长度为 %d \n", i); - } - PressEnterToContinue(); - - printf("████████ StrCopy \n"); - { - printf("█ 复制 S 到 T ...\n"); - StrCopy(&T, S); - printf("█ T = "); - PrintElem(T); - } - PressEnterToContinue(); - - printf("████████ StrCompare \n"); - { - printf("█ 比较字符串 S 和 T ...\n"); - i = StrCompare(S, T); - i == 0 ? printf("█ S==T\n") : (i < 0 ? printf("█ ST\n")); - } - PressEnterToContinue(); - - printf("████████ StrInsert \n"); - { - StrAssign(&T, "*****"); - printf("█ 将 \"*****\" 插入到串 S 的第 11 个位置处... \n"); - StrInsert(&S, 11, T); - printf("█ S = "); - PrintElem(S); - } - PressEnterToContinue(); - - printf("████████ Index \n"); - { - StrAssign(&T, "*****"); - printf("█ 获取 \"*****\" 在串 S 中的第一次出现的位置...\n"); - i = Index(S, T, 1); - printf("█ 串 \"*****\" 在 S 中第一次出现的位置为 %d \n", i); - } - PressEnterToContinue(); - - printf("████████ SubString \n"); - { - printf("█ 用 sub 返回 S 中第 11 个字符起的 5 个字符...\n"); - SubString(&sub, S, 11, 5); - printf("█ Sub = "); - PrintElem(sub); - } - PressEnterToContinue(); - - printf("████████ Replace \n"); - { - StrAssign(&T, "*****"); - StrAssign(&V, "#####@@@@@"); - printf("█ 用 \"#####@@@@@\" 替换S中的 \"*****\" ...\n"); - Replace(&S, T, V); - printf("█ S = "); - PrintElem(S); - } - PressEnterToContinue(); - - printf("████████ StrDelete \n"); - { - printf("█ 删除 S 中第 16 个字符起的 5 个字符...\n"); - StrDelete(&S, 16, 5); - printf("█ S = "); - PrintElem(S); - } - PressEnterToContinue(); - - printf("████████ ClearString \n"); - { - printf("█ 清空 S 前:"); - StrEmpty(S) ? printf(" S 为空!!\n") : printf(" S 不为空!\n"); - - ClearString(&S); - - printf("█ 清空 S 后:"); - StrEmpty(S) ? printf(" S 为空!!\n") : printf(" S 不为空!\n"); - } - PressEnterToContinue(); - - printf("████████ Concat \n"); - { - LString Tmp, S1, S2; - - StrAssign(&S1, "+++++"); - StrAssign(&S2, "-----"); - - printf("█ 联接 \"+++++\" 和 \"-----\" 形成 Tmp ...\n"); - Concat(&Tmp, S1, S2); - printf("█ Tmp = "); - PrintElem(Tmp); - } - PressEnterToContinue(); - - return 0; -} - // 测试函数,打印字符串 void PrintElem(LString S) { int i = 0; @@ -150,3 +26,125 @@ void PrintElem(LString S) { printf("\n"); } + + +int main(int argc, char** argv) { + char* chars = "01234567899876543210"; + LString S, T, sub, V; + int i; + + printf("████████ StrAssign \n"); + { + printf("█ 为块链串 S 赋值...\n"); + StrAssign(&S, chars); + printf("█ S = "); + PrintElem(S); + } + PressEnterToContinue(debug); + + printf("████████ StrEmpty \n"); + { + StrEmpty(S) ? printf("█ S 为空!!\n") : printf("█ S 不为空!\n"); + } + PressEnterToContinue(debug); + + printf("████████ StrLength \n"); + { + i = StrLength(S); + printf("█ S 的长度为 %d \n", i); + } + PressEnterToContinue(debug); + + printf("████████ StrCopy \n"); + { + printf("█ 复制 S 到 T ...\n"); + StrCopy(&T, S); + printf("█ T = "); + PrintElem(T); + } + PressEnterToContinue(debug); + + printf("████████ StrCompare \n"); + { + printf("█ 比较字符串 S 和 T ...\n"); + i = StrCompare(S, T); + i == 0 ? printf("█ S==T\n") : (i < 0 ? printf("█ ST\n")); + } + PressEnterToContinue(debug); + + printf("████████ StrInsert \n"); + { + StrAssign(&T, "*****"); + printf("█ 将 \"*****\" 插入到串 S 的第 11 个位置处... \n"); + StrInsert(&S, 11, T); + printf("█ S = "); + PrintElem(S); + } + PressEnterToContinue(debug); + + printf("████████ Index \n"); + { + StrAssign(&T, "*****"); + printf("█ 获取 \"*****\" 在串 S 中的第一次出现的位置...\n"); + i = Index(S, T, 1); + printf("█ 串 \"*****\" 在 S 中第一次出现的位置为 %d \n", i); + } + PressEnterToContinue(debug); + + printf("████████ SubString \n"); + { + printf("█ 用 sub 返回 S 中第 11 个字符起的 5 个字符...\n"); + SubString(&sub, S, 11, 5); + printf("█ Sub = "); + PrintElem(sub); + } + PressEnterToContinue(debug); + + printf("████████ Replace \n"); + { + StrAssign(&T, "*****"); + StrAssign(&V, "#####@@@@@"); + printf("█ 用 \"#####@@@@@\" 替换S中的 \"*****\" ...\n"); + Replace(&S, T, V); + printf("█ S = "); + PrintElem(S); + } + PressEnterToContinue(debug); + + printf("████████ StrDelete \n"); + { + printf("█ 删除 S 中第 16 个字符起的 5 个字符...\n"); + StrDelete(&S, 16, 5); + printf("█ S = "); + PrintElem(S); + } + PressEnterToContinue(debug); + + printf("████████ ClearString \n"); + { + printf("█ 清空 S 前:"); + StrEmpty(S) ? printf(" S 为空!!\n") : printf(" S 不为空!\n"); + + ClearString(&S); + + printf("█ 清空 S 后:"); + StrEmpty(S) ? printf(" S 为空!!\n") : printf(" S 不为空!\n"); + } + PressEnterToContinue(debug); + + printf("████████ Concat \n"); + { + LString Tmp, S1, S2; + + StrAssign(&S1, "+++++"); + StrAssign(&S2, "-----"); + + printf("█ 联接 \"+++++\" 和 \"-----\" 形成 Tmp ...\n"); + Concat(&Tmp, S1, S2); + printf("█ Tmp = "); + PrintElem(Tmp); + } + PressEnterToContinue(debug); + + return 0; +} diff --git a/CLion/CourseBook/0404_KMP/KMP-main.c b/CLion/CourseBook/0404_KMP/KMP-main.c index 973e0d8..638bf37 100644 --- a/CLion/CourseBook/0404_KMP/KMP-main.c +++ b/CLion/CourseBook/0404_KMP/KMP-main.c @@ -1,7 +1,16 @@ #include "KMP.h" //**▲04 串**// // 测试函数,打印字符串 -void PrintElem(SString S); +void PrintElem(SString S) { + int i; + + for(i = 1; i <= S[0]; i++) { + printf("%c", S[i]); + } + + printf("\n"); +} + int main(int argc, char** argv) { char* s = "abaaabcaabaabcacabaabcaabaabcac"; @@ -51,14 +60,3 @@ int main(int argc, char** argv) { return 0; } - -// 测试函数,打印字符串 -void PrintElem(SString S) { - int i; - - for(i = 1; i <= S[0]; i++) { - printf("%c", S[i]); - } - - printf("\n"); -} diff --git a/CLion/CourseBook/0501_Array/Array-main.c b/CLion/CourseBook/0501_Array/Array-main.c index ee958c6..0cc2a26 100644 --- a/CLion/CourseBook/0501_Array/Array-main.c +++ b/CLion/CourseBook/0501_Array/Array-main.c @@ -59,7 +59,7 @@ int main(int argc, char** argv) { printf("█ 初始化一个维度为<2,3,4>的三维数组 A ...\n"); InitArray(&A, 3, 2, 3, 4); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 Assign \n"); @@ -78,7 +78,7 @@ int main(int argc, char** argv) { printf("█ A = "); ArrayPrint(A); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 Value \n"); @@ -89,7 +89,7 @@ int main(int argc, char** argv) { Value(A, &x, 1, 1, 1); printf("█ A[1][1][1] = %d\n", x); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 DestroyArray \n"); @@ -102,7 +102,7 @@ int main(int argc, char** argv) { printf("█ 销毁 A 后:"); A.dim != 0 ? printf(" A 存在!\n") : printf(" A 不存在!!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; diff --git a/CLion/CourseBook/0502_TSMatrix/TSMatrix-main.c b/CLion/CourseBook/0502_TSMatrix/TSMatrix-main.c index 62631e4..ae136e5 100644 --- a/CLion/CourseBook/0502_TSMatrix/TSMatrix-main.c +++ b/CLion/CourseBook/0502_TSMatrix/TSMatrix-main.c @@ -10,7 +10,7 @@ int main(int argc, char** argv) { CreateSMatrix(&M, "TestData_M.txt"); CreateSMatrix(&N, "TestData_N.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 PrintSMatrix \n"); @@ -21,7 +21,7 @@ int main(int argc, char** argv) { printf("█ N = \n"); PrintSMatrix(N); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 CopySMatrix \n"); @@ -34,7 +34,7 @@ int main(int argc, char** argv) { printf("█ Tmp = \n"); PrintSMatrix(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 AddSMatrix \n"); @@ -46,7 +46,7 @@ int main(int argc, char** argv) { printf("█ Q1 = M + N = \n"); PrintSMatrix(Q1); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 SubSMatrix \n"); @@ -58,7 +58,7 @@ int main(int argc, char** argv) { printf("█ Q2 = M - N = \n"); PrintSMatrix(Q2); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 MultSMatrix \n"); @@ -70,7 +70,7 @@ int main(int argc, char** argv) { printf("█ Q3 = M * N = \n"); PrintSMatrix(Q3); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 TransposeSMatrix \n"); @@ -82,7 +82,7 @@ int main(int argc, char** argv) { printf("█ T1 = M(T) = \n"); PrintSMatrix(T1); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 FastTransposeSMatrix \n"); @@ -94,7 +94,7 @@ int main(int argc, char** argv) { printf("█ T2 = M(T) = \n"); PrintSMatrix(T2); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 DestroySMatrix \n"); @@ -107,7 +107,7 @@ int main(int argc, char** argv) { printf("█ 销毁 M 后:"); !M.mu && !M.nu && !M.tu ? printf(" M 不存在!!\n") : printf(" M 存在!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/CLion/CourseBook/0503_RLSMatrix/RLSMatrix-main.c b/CLion/CourseBook/0503_RLSMatrix/RLSMatrix-main.c index 3d3167f..60557d7 100644 --- a/CLion/CourseBook/0503_RLSMatrix/RLSMatrix-main.c +++ b/CLion/CourseBook/0503_RLSMatrix/RLSMatrix-main.c @@ -10,7 +10,7 @@ int main(int argc, char** argv) { CreateSMatrix(&M, "TestData_M.txt"); CreateSMatrix(&N, "TestData_N.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 PrintSMatrix \n"); @@ -21,7 +21,7 @@ int main(int argc, char** argv) { printf("█ N = \n"); PrintSMatrix(N); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 CopySMatrix \n"); @@ -34,7 +34,7 @@ int main(int argc, char** argv) { printf("█ Tmp = \n"); PrintSMatrix(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 AddSMatrix \n"); @@ -46,7 +46,7 @@ int main(int argc, char** argv) { printf("█ Q1 = M + N = \n"); PrintSMatrix(Q1); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 SubtSMatrix \n"); @@ -58,7 +58,7 @@ int main(int argc, char** argv) { printf("█ Q2 = M - N = \n"); PrintSMatrix(Q2); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 MultSMatrix \n"); @@ -70,7 +70,7 @@ int main(int argc, char** argv) { printf("█ Q3 = M * N = \n"); PrintSMatrix(Q3); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 TransposeSMatrix \n"); @@ -82,7 +82,7 @@ int main(int argc, char** argv) { printf("█ T1 = M(T) = \n"); PrintSMatrix(T1); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 FastTransposeSMatrix \n"); @@ -94,7 +94,7 @@ int main(int argc, char** argv) { printf("█ T2 = M(T) = \n"); PrintSMatrix(T2); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 DestroySMatrix \n"); @@ -107,7 +107,7 @@ int main(int argc, char** argv) { printf("█ 销毁 M 后:"); !M.mu && !M.nu && !M.tu ? printf(" M 不存在!!\n") : printf(" M 存在!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/CLion/CourseBook/0504_CrossList/CrossList-main.c b/CLion/CourseBook/0504_CrossList/CrossList-main.c index 7b19bc9..2195506 100644 --- a/CLion/CourseBook/0504_CrossList/CrossList-main.c +++ b/CLion/CourseBook/0504_CrossList/CrossList-main.c @@ -10,7 +10,7 @@ int main(int argc, char** argv) { CreateSMatrix(&M, "TestData_M.txt"); CreateSMatrix(&N, "TestData_N.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 PrintSMatrix \n"); @@ -21,7 +21,7 @@ int main(int argc, char** argv) { printf("█ N = \n"); PrintSMatrix(N); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 CopySMatrix \n"); @@ -34,7 +34,7 @@ int main(int argc, char** argv) { printf("█ Tmp = \n"); PrintSMatrix(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 AddSMatrix \n"); @@ -46,7 +46,7 @@ int main(int argc, char** argv) { printf("█ Q1 = M + N = \n"); PrintSMatrix(Q1); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 SubtSMatrix \n"); @@ -58,7 +58,7 @@ int main(int argc, char** argv) { printf("█ Q2 = M - N = \n"); PrintSMatrix(Q2); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 MultSMatrix \n"); @@ -70,7 +70,7 @@ int main(int argc, char** argv) { printf("█ Q3 = M * N = \n"); PrintSMatrix(Q3); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 TransposeSMatrix \n"); @@ -82,7 +82,7 @@ int main(int argc, char** argv) { printf("█ T = M(T) = \n"); PrintSMatrix(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 DestroySMatrix \n"); @@ -95,7 +95,7 @@ int main(int argc, char** argv) { printf("█ 销毁 M 后:"); !M.mu && !M.nu && !M.tu ? printf(" M 不存在!!\n") : printf(" M 存在!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/CLion/CourseBook/0505_GList-HT/GList-HT-main.c b/CLion/CourseBook/0505_GList-HT/GList-HT-main.c index afd1110..521bc76 100644 --- a/CLion/CourseBook/0505_GList-HT/GList-HT-main.c +++ b/CLion/CourseBook/0505_GList-HT/GList-HT-main.c @@ -1,7 +1,11 @@ #include #include "GList-HT.h" //**▲05 数组和广义表**// -void PrintElem(AtomType e); //打印广义表原子 +// 打印广义表原子 +void PrintElem(AtomType e) { + printf("%c ", e); +} + int main(int argc, char** argv) { GList Tmp, G; @@ -13,7 +17,7 @@ int main(int argc, char** argv) { printf("█ 创建空的广义表 Tmp ...\n"); InitGList(&Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 GListEmpty \n"); { @@ -22,7 +26,7 @@ int main(int argc, char** argv) { tag = GListEmpty(Tmp); tag ? printf("█ Tmp 为空!\n") : printf("█ Tmp 不为空!!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 CreateGList \n"); { @@ -42,7 +46,7 @@ int main(int argc, char** argv) { StrAssign(S3, s3); CreateGList(&g3, S3); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 InsertFirst \n"); { @@ -51,7 +55,7 @@ int main(int argc, char** argv) { InsertFirst(&Tmp, g2); InsertFirst(&Tmp, g1); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 Traverse \n"); { @@ -59,14 +63,14 @@ int main(int argc, char** argv) { Traverse(Tmp, PrintElem); printf("\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 PrintGList \n"); { printf("█ 带括号输出广义表 Tmp = "); PrintGList(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 CopyGList \n"); { @@ -74,7 +78,7 @@ int main(int argc, char** argv) { CopyGList(&G, Tmp); PrintGList(G); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 DeleteFirst \n"); { @@ -88,19 +92,19 @@ int main(int argc, char** argv) { printf("█ Tmp = "); PrintGList(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 GListLength \n"); { printf("█ 广义表 G 的长度为: %d \n", GListLength(G)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 GListDepth \n"); { printf("█ 广义表 G 的深度为: %d\n", GListDepth(G)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 GetHead \n"); { @@ -110,7 +114,7 @@ int main(int argc, char** argv) { H = GetHead(G); PrintGList(H); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 GetTail \n"); { @@ -120,7 +124,7 @@ int main(int argc, char** argv) { T = GetTail(G); PrintGList(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 DestroyGList \n"); { @@ -132,11 +136,7 @@ int main(int argc, char** argv) { printf("█ 销毁 G 后:"); G ? printf(" G 存在!\n") : printf(" G 不存在!!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } - -void PrintElem(AtomType e) { - printf("%c ", e); -} diff --git a/CLion/CourseBook/0506_GList-E/GList-E-main.c b/CLion/CourseBook/0506_GList-E/GList-E-main.c index 2250e5e..93ee27f 100644 --- a/CLion/CourseBook/0506_GList-E/GList-E-main.c +++ b/CLion/CourseBook/0506_GList-E/GList-E-main.c @@ -1,7 +1,11 @@ #include #include "GList-E.h" //**▲05 数组和广义表**// -void PrintElem(AtomType e); //打印广义表原子 +// 打印广义表原子 +void PrintElem(AtomType e) { + printf("%c ", e); +} + int main(int argc, char** argv) { GList Tmp, G; @@ -13,7 +17,7 @@ int main(int argc, char** argv) { printf("█ 创建空的广义表 Tmp ...\n"); InitGList(&Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 GListEmpty \n"); { @@ -22,7 +26,7 @@ int main(int argc, char** argv) { tag = GListEmpty(Tmp); tag ? printf("█ Tmp 为空!\n") : printf("█ Tmp 不为空!!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 CreateGList \n"); { @@ -42,7 +46,7 @@ int main(int argc, char** argv) { StrAssign(S3, s3); CreateGList(&g3, S3); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 InsertFirst \n"); { @@ -51,7 +55,7 @@ int main(int argc, char** argv) { InsertFirst(&Tmp, g2); InsertFirst(&Tmp, g1); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 Traverse \n"); { @@ -59,14 +63,14 @@ int main(int argc, char** argv) { Traverse(Tmp, PrintElem); printf("\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 PrintGList \n"); { printf("█ 带括号输出广义表 Tmp = "); PrintGList(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 CopyGList \n"); { @@ -74,7 +78,7 @@ int main(int argc, char** argv) { CopyGList(&G, Tmp); PrintGList(G); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 DeleteFirst \n"); { @@ -88,19 +92,19 @@ int main(int argc, char** argv) { printf("█ Tmp = "); PrintGList(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 GListLength \n"); { printf("█ 广义表 G 的长度为:%d\n", GListLength(G)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 GListDepth_1等 \n"); { printf("█ 广义表 G 的深度为:%d\n", GListDepth(G)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 GetHead \n"); { @@ -110,7 +114,7 @@ int main(int argc, char** argv) { H = GetHead(G); PrintGList(H); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 GetTail \n"); { @@ -120,7 +124,7 @@ int main(int argc, char** argv) { T = GetTail(G); PrintGList(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 函数 DestroyGList \n"); { @@ -132,11 +136,7 @@ int main(int argc, char** argv) { printf("█ 销毁 G 后:"); G ? printf(" G 存在!\n") : printf(" G 不存在!!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } - -void PrintElem(AtomType e) { - printf("%c ", e); -} diff --git a/CLion/CourseBook/0601_SqBiTree/SqBiTree-main.c b/CLion/CourseBook/0601_SqBiTree/SqBiTree-main.c index 9168f97..a8a3143 100644 --- a/CLion/CourseBook/0601_SqBiTree/SqBiTree-main.c +++ b/CLion/CourseBook/0601_SqBiTree/SqBiTree-main.c @@ -17,7 +17,7 @@ int main(int argc, char* argv[]) { printf("█ 初始化空二叉树 T ...\n"); InitBiTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ CreateBiTree \n"); @@ -25,14 +25,14 @@ int main(int argc, char* argv[]) { printf("█ 按先序序列创建二叉树 T ...\n"); CreateBiTree(T, "TestData_Pre.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ BiTreeDepth \n"); { printf("█ 二叉树 T 的深度为:%d \n", BiTreeDepth(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ PrintTree \n"); @@ -40,7 +40,7 @@ int main(int argc, char* argv[]) { printf("█ 按二叉树的结构打印树 T ...\n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ PreOrderTraverse \n"); @@ -48,7 +48,7 @@ int main(int argc, char* argv[]) { printf("█ 前序遍历二叉树 T = "); PreOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ InOrderTraverse \n"); @@ -56,7 +56,7 @@ int main(int argc, char* argv[]) { printf("█ 中序遍历二叉树 T = "); InOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ PostOrderTraverse \n"); @@ -64,7 +64,7 @@ int main(int argc, char* argv[]) { printf("█ 后序遍历二叉树 T = "); PostOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ LevelOrderTraverse \n"); @@ -72,7 +72,7 @@ int main(int argc, char* argv[]) { printf("█ 层序遍历二叉树 T = "); LevelOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Value \n"); @@ -80,7 +80,7 @@ int main(int argc, char* argv[]) { TElemType e = 'F'; printf("█ 结点 %c 的值为 %c\n", e, Value(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Assign \n"); @@ -91,14 +91,14 @@ int main(int argc, char* argv[]) { Assign(T, e, value); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Root \n"); { printf("█ T 的根结点为 %c\n", Root(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Parent \n"); @@ -106,7 +106,7 @@ int main(int argc, char* argv[]) { TElemType e = 'E'; printf("█ 结点 %c 的双亲为:%c \n", e, Parent(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ LeftChild、RightChild \n"); @@ -114,7 +114,7 @@ int main(int argc, char* argv[]) { TElemType e = 'E'; printf("█ 结点 %c 的左孩子结点值为:%c ,右孩子结点值为:%c\n", e, LeftChild(T, e), RightChild(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ LeftSibling \n"); @@ -122,7 +122,7 @@ int main(int argc, char* argv[]) { TElemType e = 'I'; printf("█ 结点 %c 的左兄弟为:%c\n", e, LeftSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ RightSibling \n"); @@ -130,7 +130,7 @@ int main(int argc, char* argv[]) { TElemType e = 'H'; printf("█ 结点 %c 的右兄弟为:%c\n", e, RightSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ InsertChild \n"); @@ -157,7 +157,7 @@ int main(int argc, char* argv[]) { InsertChild(T, p2, 0, c2); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ DeleteChild \n"); @@ -173,7 +173,7 @@ int main(int argc, char* argv[]) { DeleteChild(T, p2, 0); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ClearBiTree、BiTreeEmpty \n"); @@ -186,7 +186,7 @@ int main(int argc, char* argv[]) { printf("█ 清空后:"); BiTreeEmpty(T) ? printf("T 为空!\n") : printf("T 不为空!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/CLion/CourseBook/0602_BiTree/BiTree-main.c b/CLion/CourseBook/0602_BiTree/BiTree-main.c index 677ecb4..00d0cc7 100644 --- a/CLion/CourseBook/0602_BiTree/BiTree-main.c +++ b/CLion/CourseBook/0602_BiTree/BiTree-main.c @@ -17,7 +17,7 @@ int main(int argc, char* argv[]) { printf("█ 初始化空二叉树 T ...\n"); InitBiTree(&T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ CreateBiTree \n"); @@ -25,14 +25,14 @@ int main(int argc, char* argv[]) { printf("█ 按先序序列创建二叉树 T ...\n"); CreateBiTree(&T, "TestData_Pre.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ BiTreeDepth \n"); { printf("█ 二叉树 T 的深度为:%d \n", BiTreeDepth(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ PrintTree \n"); @@ -40,7 +40,7 @@ int main(int argc, char* argv[]) { printf("█ 按二叉树的结构打印树 T ...\n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ PreOrderTraverse \n"); @@ -48,7 +48,7 @@ int main(int argc, char* argv[]) { printf("█ 前序遍历二叉树 T = "); PreOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ InOrderTraverse \n"); @@ -56,7 +56,7 @@ int main(int argc, char* argv[]) { printf("█ 中序遍历二叉树 T = "); InOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ PostOrderTraverse \n"); @@ -64,7 +64,7 @@ int main(int argc, char* argv[]) { printf("█ 后序遍历二叉树 T = "); PostOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ LevelOrderTraverse \n"); @@ -72,7 +72,7 @@ int main(int argc, char* argv[]) { printf("█ 层序遍历二叉树 T = "); LevelOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Value \n"); @@ -80,7 +80,7 @@ int main(int argc, char* argv[]) { TElemType e = 'F'; printf("█ 结点 %c 的值为 %c\n", e, Value(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Assign \n"); @@ -91,14 +91,14 @@ int main(int argc, char* argv[]) { Assign(T, e, value); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Root \n"); { printf("█ T 的根结点为 %c\n", Root(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Parent \n"); @@ -106,7 +106,7 @@ int main(int argc, char* argv[]) { TElemType e = 'E'; printf("█ 结点 %c 的双亲为:%c \n", e, Parent(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ LeftChild、RightChild \n"); @@ -114,7 +114,7 @@ int main(int argc, char* argv[]) { TElemType e = 'E'; printf("█ 结点 %c 的左孩子结点值为:%c ,右孩子结点值为:%c\n", e, LeftChild(T, e), RightChild(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ LeftSibling \n"); @@ -122,7 +122,7 @@ int main(int argc, char* argv[]) { TElemType e = 'I'; printf("█ 结点 %c 的左兄弟为:%c\n", e, LeftSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ RightSibling \n"); @@ -130,7 +130,7 @@ int main(int argc, char* argv[]) { TElemType e = 'H'; printf("█ 结点 %c 的右兄弟为:%c\n", e, RightSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ InsertChild \n"); @@ -157,7 +157,7 @@ int main(int argc, char* argv[]) { InsertChild(T, p2, 0, c2); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ DeleteChild \n"); @@ -173,7 +173,7 @@ int main(int argc, char* argv[]) { DeleteChild(T, p2, 0); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ClearBiTree、BiTreeEmpty \n"); @@ -186,7 +186,7 @@ int main(int argc, char* argv[]) { printf("█ 清空后:"); BiTreeEmpty(T) ? printf("T 为空!\n") : printf("T 不为空!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/CLion/CourseBook/0603_BiTriTree/BiTriTree-main.c b/CLion/CourseBook/0603_BiTriTree/BiTriTree-main.c index 6237155..a4decf1 100644 --- a/CLion/CourseBook/0603_BiTriTree/BiTriTree-main.c +++ b/CLion/CourseBook/0603_BiTriTree/BiTriTree-main.c @@ -16,7 +16,7 @@ int main(int argc, char* argv[]) { printf("█ 初始化空二叉树 T ...\n"); InitBiTree(&T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ CreateBiTree \n"); @@ -24,14 +24,14 @@ int main(int argc, char* argv[]) { printf("█ 按先序序列创建二叉树 T ...\n"); CreateBiTree(&T, "TestData_Pre.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ BiTreeDepth \n"); { printf("█ 二叉树 T 的深度为:%d \n", BiTreeDepth(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ PrintTree \n"); @@ -39,7 +39,7 @@ int main(int argc, char* argv[]) { printf("█ 按二叉树的结构打印树 T ...\n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ PreOrderTraverse \n"); @@ -47,7 +47,7 @@ int main(int argc, char* argv[]) { printf("█ 前序遍历二叉树 T = "); PreOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ InOrderTraverse \n"); @@ -55,7 +55,7 @@ int main(int argc, char* argv[]) { printf("█ 中序遍历二叉树 T = "); InOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ PostOrderTraverse \n"); @@ -63,7 +63,7 @@ int main(int argc, char* argv[]) { printf("█ 后序遍历二叉树 T = "); PostOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ LevelOrderTraverse \n"); @@ -71,7 +71,7 @@ int main(int argc, char* argv[]) { printf("█ 层序遍历二叉树 T = "); LevelOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Value \n"); @@ -79,7 +79,7 @@ int main(int argc, char* argv[]) { TElemType e = 'F'; printf("█ 结点 %c 的值为 %c\n", e, Value(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Assign \n"); @@ -90,14 +90,14 @@ int main(int argc, char* argv[]) { Assign(T, e, value); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Root \n"); { printf("█ T 的根结点为 %c\n", Root(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Parent \n"); @@ -105,7 +105,7 @@ int main(int argc, char* argv[]) { TElemType e = 'E'; printf("█ 结点 %c 的双亲为:%c \n", e, Parent(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ LeftChild、RightChild \n"); @@ -113,7 +113,7 @@ int main(int argc, char* argv[]) { TElemType e = 'E'; printf("█ 结点 %c 的左孩子结点值为:%c ,右孩子结点值为:%c\n", e, LeftChild(T, e), RightChild(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ LeftSibling \n"); @@ -121,7 +121,7 @@ int main(int argc, char* argv[]) { TElemType e = 'I'; printf("█ 结点 %c 的左兄弟为:%c\n", e, LeftSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ RightSibling \n"); @@ -129,7 +129,7 @@ int main(int argc, char* argv[]) { TElemType e = 'H'; printf("█ 结点 %c 的右兄弟为:%c\n", e, RightSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ InsertChild \n"); @@ -156,7 +156,7 @@ int main(int argc, char* argv[]) { InsertChild(T, p2, 0, c2); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ DeleteChild \n"); @@ -172,7 +172,7 @@ int main(int argc, char* argv[]) { DeleteChild(T, p2, 0); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ClearBiTree、BiTreeEmpty \n"); @@ -185,7 +185,7 @@ int main(int argc, char* argv[]) { printf("█ 清空后:"); BiTreeEmpty(T) ? printf("T 为空!\n") : printf("T 不为空!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/CLion/CourseBook/0604_BiThrTree/BiThrTree-main.c b/CLion/CourseBook/0604_BiThrTree/BiThrTree-main.c index cfccade..29b76d6 100644 --- a/CLion/CourseBook/0604_BiThrTree/BiThrTree-main.c +++ b/CLion/CourseBook/0604_BiThrTree/BiThrTree-main.c @@ -24,5 +24,5 @@ int main(int argc, char* argv[]) { printf("█ 中序遍历中序全线索二叉树...\n"); InOrderTraverse_Thr(Thr, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); } diff --git a/CLion/CourseBook/0605_PTree/PTree-main.c b/CLion/CourseBook/0605_PTree/PTree-main.c index 7113b7f..28610f3 100644 --- a/CLion/CourseBook/0605_PTree/PTree-main.c +++ b/CLion/CourseBook/0605_PTree/PTree-main.c @@ -17,7 +17,7 @@ int main(int argc, char* argv[]) { printf("█ 初始化空树 T ...\n"); InitTree(&T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ CreateTree \n"); @@ -25,14 +25,14 @@ int main(int argc, char* argv[]) { printf("█ 按先序序列创建树 T ...\n"); CreateTree(&T, "TestData_T.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ TreeDepth \n"); { printf("█ 树 T 的深度为:%d \n", TreeDepth(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ PrintTree \n"); @@ -41,7 +41,7 @@ int main(int argc, char* argv[]) { printf("█ T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ PreOrderTraverse \n"); @@ -49,7 +49,7 @@ int main(int argc, char* argv[]) { printf("█ 前序遍历树 T = "); PreOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ PostOrderTraverse \n"); @@ -57,7 +57,7 @@ int main(int argc, char* argv[]) { printf("█ 后序遍历树 T = "); PostOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ LevelOrderTraverse \n"); @@ -65,7 +65,7 @@ int main(int argc, char* argv[]) { printf("█ 层序遍历树 T = "); LevelOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Value \n"); @@ -73,7 +73,7 @@ int main(int argc, char* argv[]) { TElemType e = 'F'; printf("█ 结点 %c 的值为 %c\n", e, Value(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Assign \n"); @@ -85,14 +85,14 @@ int main(int argc, char* argv[]) { printf("█ T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Root \n"); { printf("█ T 的根结点为 %c\n", Root(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Parent \n"); @@ -100,7 +100,7 @@ int main(int argc, char* argv[]) { TElemType e = 'E'; printf("█ 结点 %c 的双亲为:%c \n", e, Parent(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ChildCount \n"); @@ -108,7 +108,7 @@ int main(int argc, char* argv[]) { TElemType e = 'X'; printf("█ 结点 %c 有 %d 个孩子\n", e, ChildCount(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Child \n"); @@ -117,7 +117,7 @@ int main(int argc, char* argv[]) { int i = 2; printf("█ 结点 %c 的第 %d 个孩子结点值为:%c \n", e, i, Child(T, e, i)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ LeftSibling \n"); @@ -125,7 +125,7 @@ int main(int argc, char* argv[]) { TElemType e = 'H'; printf("█ 结点 %c 的左兄弟为:%c\n", e, LeftSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ RightSibling \n"); @@ -133,7 +133,7 @@ int main(int argc, char* argv[]) { TElemType e = 'H'; printf("█ 结点 %c 的右兄弟为:%c\n", e, RightSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ InsertChild \n"); @@ -153,7 +153,7 @@ int main(int argc, char* argv[]) { printf("█ T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ DeleteChild \n"); @@ -166,7 +166,7 @@ int main(int argc, char* argv[]) { printf("█ T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ClearTree、TreeEmpty \n"); @@ -179,7 +179,7 @@ int main(int argc, char* argv[]) { printf("█ 清空后:"); TreeEmpty(T) ? printf("T 为空!\n") : printf("T 不为空!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/CLion/CourseBook/0606_CTree/CTree-main.c b/CLion/CourseBook/0606_CTree/CTree-main.c index 7ba7b3c..7b4244e 100644 --- a/CLion/CourseBook/0606_CTree/CTree-main.c +++ b/CLion/CourseBook/0606_CTree/CTree-main.c @@ -17,7 +17,7 @@ int main(int argc, char* argv[]) { printf("█ 初始化空树 T ...\n"); InitTree(&T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ CreateTree \n"); @@ -25,14 +25,14 @@ int main(int argc, char* argv[]) { printf("█ 按先序序列创建树 T ...\n"); CreateTree(&T, "TestData_T.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ TreeDepth \n"); { printf("█ 树 T 的深度为:%d \n", TreeDepth(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ PrintTree \n"); @@ -41,7 +41,7 @@ int main(int argc, char* argv[]) { printf("█ T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ PreOrderTraverse \n"); @@ -49,7 +49,7 @@ int main(int argc, char* argv[]) { printf("█ 前序遍历树 T = "); PreOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ PostOrderTraverse \n"); @@ -57,7 +57,7 @@ int main(int argc, char* argv[]) { printf("█ 后序遍历树 T = "); PostOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ LevelOrderTraverse \n"); @@ -65,7 +65,7 @@ int main(int argc, char* argv[]) { printf("█ 层序遍历树 T = "); LevelOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Value \n"); @@ -73,7 +73,7 @@ int main(int argc, char* argv[]) { TElemType e = 'F'; printf("█ 结点 %c 的值为 %c\n", e, Value(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Assign \n"); @@ -85,14 +85,14 @@ int main(int argc, char* argv[]) { printf("█ T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Root \n"); { printf("█ T 的根结点为 %c\n", Root(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Parent \n"); @@ -100,7 +100,7 @@ int main(int argc, char* argv[]) { TElemType e = 'E'; printf("█ 结点 %c 的双亲为:%c \n", e, Parent(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ChildCount \n"); @@ -108,7 +108,7 @@ int main(int argc, char* argv[]) { TElemType e = 'X'; printf("█ 结点 %c 有 %d 个孩子\n", e, ChildCount(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Child \n"); @@ -117,7 +117,7 @@ int main(int argc, char* argv[]) { int i = 2; printf("█ 结点 %c 的第 %d 个孩子结点值为:%c \n", e, i, Child(T, e, i)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ LeftSibling \n"); @@ -125,7 +125,7 @@ int main(int argc, char* argv[]) { TElemType e = 'H'; printf("█ 结点 %c 的左兄弟为:%c\n", e, LeftSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ RightSibling \n"); @@ -133,7 +133,7 @@ int main(int argc, char* argv[]) { TElemType e = 'H'; printf("█ 结点 %c 的右兄弟为:%c\n", e, RightSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ InsertChild \n"); @@ -153,7 +153,7 @@ int main(int argc, char* argv[]) { printf("█ T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ DeleteChild \n"); @@ -166,7 +166,7 @@ int main(int argc, char* argv[]) { printf("█ T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ClearTree、TreeEmpty \n"); @@ -179,7 +179,7 @@ int main(int argc, char* argv[]) { printf("█ 清空后:"); TreeEmpty(T) ? printf("T 为空!\n") : printf("T 不为空!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/CLion/CourseBook/0607_CSTree/CSTree-main.c b/CLion/CourseBook/0607_CSTree/CSTree-main.c index 527b919..401a39e 100644 --- a/CLion/CourseBook/0607_CSTree/CSTree-main.c +++ b/CLion/CourseBook/0607_CSTree/CSTree-main.c @@ -1,6 +1,6 @@ #include #include "Status.h" //**▲01 绪论**// -#include "CSTree.h" //**▲06 树和二叉树**// +#include "CSTree.h" //**▲06 树和二叉树**// // 测试函数,打印元素 Status PrintElem(TElemType c) { @@ -17,7 +17,7 @@ int main(int argc, char* argv[]) { printf("█ 初始化空树 T ...\n"); InitTree(&T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ CreateTree \n"); @@ -25,14 +25,14 @@ int main(int argc, char* argv[]) { printf("█ 按先序序列创建树 T ...\n"); CreateTree(&T, "TestData_T.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ TreeDepth \n"); { printf("█ 树 T 的深度为:%d \n", TreeDepth(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ PrintTree \n"); @@ -41,7 +41,7 @@ int main(int argc, char* argv[]) { printf("█ T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ PreOrderTraverse \n"); @@ -49,7 +49,7 @@ int main(int argc, char* argv[]) { printf("█ 前序遍历树 T = "); PreOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ PostOrderTraverse \n"); @@ -57,7 +57,7 @@ int main(int argc, char* argv[]) { printf("█ 后序遍历树 T = "); PostOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ LevelOrderTraverse \n"); @@ -65,7 +65,7 @@ int main(int argc, char* argv[]) { printf("█ 层序遍历树 T = "); LevelOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Value \n"); @@ -73,7 +73,7 @@ int main(int argc, char* argv[]) { TElemType e = 'F'; printf("█ 结点 %c 的值为 %c\n", e, Value(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Assign \n"); @@ -85,14 +85,14 @@ int main(int argc, char* argv[]) { printf("█ T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Root \n"); { printf("█ T 的根结点为 %c\n", Root(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Parent \n"); @@ -100,7 +100,7 @@ int main(int argc, char* argv[]) { TElemType e = 'E'; printf("█ 结点 %c 的双亲为:%c \n", e, Parent(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ChildCount \n"); @@ -108,7 +108,7 @@ int main(int argc, char* argv[]) { TElemType e = 'X'; printf("█ 结点 %c 有 %d 个孩子\n", e, ChildCount(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Child \n"); @@ -117,7 +117,7 @@ int main(int argc, char* argv[]) { int i = 2; printf("█ 结点 %c 的第 %d 个孩子结点值为:%c \n", e, i, Child(T, e, i)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ LeftSibling \n"); @@ -125,7 +125,7 @@ int main(int argc, char* argv[]) { TElemType e = 'H'; printf("█ 结点 %c 的左兄弟为:%c\n", e, LeftSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ RightSibling \n"); @@ -133,7 +133,7 @@ int main(int argc, char* argv[]) { TElemType e = 'H'; printf("█ 结点 %c 的右兄弟为:%c\n", e, RightSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ InsertChild \n"); @@ -153,7 +153,7 @@ int main(int argc, char* argv[]) { printf("█ T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ DeleteChild \n"); @@ -166,7 +166,7 @@ int main(int argc, char* argv[]) { printf("█ T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ClearTree、TreeEmpty \n"); @@ -179,7 +179,7 @@ int main(int argc, char* argv[]) { printf("█ 清空后:"); TreeEmpty(T) ? printf("T 为空!\n") : printf("T 不为空!\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/CLion/CourseBook/0608_MFSet/MFSet-main.c b/CLion/CourseBook/0608_MFSet/MFSet-main.c index 0cf6055..16f6001 100644 --- a/CLion/CourseBook/0608_MFSet/MFSet-main.c +++ b/CLion/CourseBook/0608_MFSet/MFSet-main.c @@ -28,7 +28,7 @@ int main(int argc, char* argv[]) { printf("█ 初始化二元关系 R2 ...\n"); initial_relation(&R2, "TestData_R2.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ PrintSet \n"); @@ -36,7 +36,7 @@ int main(int argc, char* argv[]) { printf("█ 输出集合 S ...\n"); PrintSet(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); // 方案一 @@ -57,7 +57,7 @@ int main(int argc, char* argv[]) { printf("█ 输出集合 S ...\n"); PrintSet(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); // 方案二 @@ -78,7 +78,7 @@ int main(int argc, char* argv[]) { // printf("█ 输出集合 S ...\n"); // PrintSet(S); // } -// PressEnterToContinue(); +// PressEnterToContinue(debug); return OK; } diff --git a/CLion/CourseBook/0609_HuffmanTree/HuffmanTree-main.c b/CLion/CourseBook/0609_HuffmanTree/HuffmanTree-main.c index fa8e0e8..937d722 100644 --- a/CLion/CourseBook/0609_HuffmanTree/HuffmanTree-main.c +++ b/CLion/CourseBook/0609_HuffmanTree/HuffmanTree-main.c @@ -12,7 +12,7 @@ int main(int argc, char* argv[]) { printf("█ 初始化环境,主要是初始化权值信息...\n"); InitEnvironment(&w, &n, "TestData_HT.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ HuffmanCodeing \n"); @@ -27,7 +27,7 @@ int main(int argc, char* argv[]) { printf("█ 打印赫夫曼编码...\n"); PrintHuffmanCode(HT, HC); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ HuffmanDecoding \n"); @@ -40,7 +40,7 @@ int main(int argc, char* argv[]) { printf("█ 打印权值信息...\n"); PrintWeight(HC, weight, n); } - PressEnterToContinue(); + PressEnterToContinue(debug); return OK; } \ No newline at end of file diff --git a/CLion/CourseBook/0610_PowerSet/PowerSet-main.c b/CLion/CourseBook/0610_PowerSet/PowerSet-main.c index 71b61cf..7973ce1 100644 --- a/CLion/CourseBook/0610_PowerSet/PowerSet-main.c +++ b/CLion/CourseBook/0610_PowerSet/PowerSet-main.c @@ -9,7 +9,7 @@ int main(int argc, char* argv[]) { printf("█ 创建集合 A ...\n"); CreatePowerSet(&A, "TestData_A.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ PrintPowerSet \n"); @@ -17,7 +17,7 @@ int main(int argc, char* argv[]) { printf("█ 输出集合 A = "); PrintPowerSet(A); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ GetPowerSet \n"); @@ -32,7 +32,7 @@ int main(int argc, char* argv[]) { printf("█ 依次输出求取的幂集中的各子集...\n"); GetPowerSet(1, A, B); } - PressEnterToContinue(); + PressEnterToContinue(debug); return OK; } diff --git a/CLion/CourseBook/0611_NQueens/NQueens-main.c b/CLion/CourseBook/0611_NQueens/NQueens-main.c index 9e83a8e..5fb8e16 100644 --- a/CLion/CourseBook/0611_NQueens/NQueens-main.c +++ b/CLion/CourseBook/0611_NQueens/NQueens-main.c @@ -8,21 +8,21 @@ int main(int argc, char* argv[]) { printf("初始化一个 %2d * %-2d 的空棋盘...\n", N, N); InitChessBoard(); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ ShowChessBoard \n"); { printf("展示当前棋盘中的皇后布局...\n"); ShowChessBoard(); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Trial \n"); { printf("计算 %d 皇后问题的各解...\n", N); Trial(1, N); } - PressEnterToContinue(); + PressEnterToContinue(debug); return OK; } diff --git a/CLion/ExerciseBook/02.16-02.18/02.16-02.18.c b/CLion/ExerciseBook/02.16-02.18/02.16-02.18.c index d9e1826..139e964 100644 --- a/CLion/ExerciseBook/02.16-02.18/02.16-02.18.c +++ b/CLion/ExerciseBook/02.16-02.18/02.16-02.18.c @@ -64,7 +64,7 @@ int main(int argc, char* argv[]) { Output(la); printf("█ lb = "); Output(lb); - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 题 2.16 验证...\n"); printf("█ 将la中从第2个结点起的5个结点插入到lb的第6个结点之前...\n"); @@ -73,7 +73,7 @@ int main(int argc, char* argv[]) { Output(la); printf("█ lb = "); Output(lb); - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ 题 2.18 验证...\n"); printf("█ 删除lb第6个结点起的5个结点...\n"); diff --git a/CLion/ExerciseBook/04.21/04.21.c b/CLion/ExerciseBook/04.21/04.21.c index 4dac89b..a4fe31a 100644 --- a/CLion/ExerciseBook/04.21/04.21.c +++ b/CLion/ExerciseBook/04.21/04.21.c @@ -87,14 +87,14 @@ int main(int argc, char* argv[]) { printf("█ S = "); StrPrint_4_21(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ StrLength \n"); { i = StrLength_4_21(S); printf("█ S 的长度为 %d \n", i); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ StrCopy \n"); { @@ -103,7 +103,7 @@ int main(int argc, char* argv[]) { printf("█ T = "); StrPrint_4_21(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ StrCompare \n"); { @@ -111,7 +111,7 @@ int main(int argc, char* argv[]) { i = StrCompare_4_21(S, T); i == 0 ? printf("█ S==T\n") : (i < 0 ? printf("█ ST\n")); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ SubString \n"); { @@ -122,7 +122,7 @@ int main(int argc, char* argv[]) { printf("█ Sub = "); StrPrint_4_21(Sub); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("████████ Concat \n"); @@ -137,7 +137,7 @@ int main(int argc, char* argv[]) { printf("█ Tmp = "); StrPrint_4_21(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/CLion/ExerciseBook/06.56-06.58/06.56-06.58.c b/CLion/ExerciseBook/06.56-06.58/06.56-06.58.c index 189086b..9077e13 100644 --- a/CLion/ExerciseBook/06.56-06.58/06.56-06.58.c +++ b/CLion/ExerciseBook/06.56-06.58/06.56-06.58.c @@ -72,7 +72,7 @@ int main(int argc, char* argv[]) { printf("█ 测试方法Algo_6_56:输出树的先序序列:"); PreTraverse(Thr); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("███题 6.57 验证...███\n"); @@ -92,7 +92,7 @@ int main(int argc, char* argv[]) { printf("█ 测试方法Algo_6_57:输出树的后序序列:"); PosTraverse(Thr); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf("███题 6.58 验证...███\n"); @@ -134,7 +134,7 @@ int main(int argc, char* argv[]) { printf("█ 插入完成后的中序全线索二叉树为:"); InOrderTraverse_Thr(Thr, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); } diff --git a/CLion/Status/Status.c b/CLion/Status/Status.c index 677db90..93f3696 100644 --- a/CLion/Status/Status.c +++ b/CLion/Status/Status.c @@ -2,6 +2,11 @@ #include #include // 提供宏va_list、va_start、va_arg、va_end #include // 提供isprint原型 +#include "Status.h" + +/* 全局变量*/ +Boolean debug = FALSE; // 是否使用debug模式。测试时可设置为TRUE,发布时可设置为FALSE(修改debug值后,一般需要重新生成静态库)。 + /* * 这是自定义的数据录入函数,用于从文件fp中读取格式化的输入 @@ -135,20 +140,17 @@ int ReadData(FILE* fp, char* format, ...) { } // 摁下回车键以继续运行 -void PressEnterToContinue() { - int debug = 1; - +void PressEnterToContinue(Boolean debug) { fflush(stdin); - printf("\nPress Enter to Continue..."); - - // 处于测试阶段时,可以让debug=1,自动添加换行,便于测试 + // 处于测试阶段时,可以让debug=TRUE,手动输入换行,以便让程序暂停下来,观察每一步的输出 if(debug) { - printf("\n"); - - // 发布时,可以让debug=0,手动输入换行,否则让程序暂停下来,观察每一步的输出 - } else { + printf("\nPress Enter to Continue..."); getchar(); + + // 发布时,可以让debug=FALSE,自动添加换行,直接出结果 + } else { + printf("\n"); } fflush(stdin); diff --git a/CLion/Status/Status.h b/CLion/Status/Status.h index acb6b21..ccdf43c 100644 --- a/CLion/Status/Status.h +++ b/CLion/Status/Status.h @@ -33,12 +33,14 @@ typedef int Status; /* 布尔类型 */ typedef int Boolean; +/* 全局变量*/ +extern Boolean debug; // 是否使用debug模式 // 读取数据 int ReadData(FILE* fp, char* format, ...); // 摁下回车键以继续运行 -void PressEnterToContinue(); +void PressEnterToContinue(Boolean debug); // 函数暂停一段时间,time不代表具体的时间 void Wait(long time); diff --git a/Dev-C++/CourseBook/0201_SqList/SqList-main.cpp b/Dev-C++/CourseBook/0201_SqList/SqList-main.cpp index 684e954..fefa87b 100644 --- a/Dev-C++/CourseBook/0201_SqList/SqList-main.cpp +++ b/Dev-C++/CourseBook/0201_SqList/SqList-main.cpp @@ -23,7 +23,7 @@ int main(int argc, char** argv) { printf(" ʼ˳ L ...\n"); InitList(&L); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListEmpty \n"); @@ -34,7 +34,7 @@ int main(int argc, char** argv) { printf(" L Ϊգ\n"); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListInsert \n"); @@ -44,7 +44,7 @@ int main(int argc, char** argv) { ListInsert(&L, i, 2 * i); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListTraverse \n"); @@ -52,7 +52,7 @@ int main(int argc, char** argv) { printf(" L еԪΪL = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListLength \n"); @@ -60,7 +60,7 @@ int main(int argc, char** argv) { i = ListLength(L); printf(" L ijΪ %d \n", i); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListDelete \n"); @@ -79,7 +79,7 @@ int main(int argc, char** argv) { printf(" ɾԪأL = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GetElem \n"); @@ -87,7 +87,7 @@ int main(int argc, char** argv) { GetElem(L, 4, &e); printf(" L е 4 λõԪΪ \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LocateElem \n"); @@ -95,7 +95,7 @@ int main(int argc, char** argv) { i = LocateElem(L, 7, CmpGreater); printf(" L еһԪֵ \"7\" Ԫ \"%d\" \n", L.elem[i - 1]); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PriorElem \n"); @@ -108,7 +108,7 @@ int main(int argc, char** argv) { printf(" Ԫ \"%d\" ǰڣ\n", cur_e); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" NextElem \n"); @@ -121,7 +121,7 @@ int main(int argc, char** argv) { printf(" Ԫ \"%d\" ĺ̲ڣ\n", cur_e); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearList \n"); @@ -142,7 +142,7 @@ int main(int argc, char** argv) { printf(" L Ϊգ\n"); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DestroyList \n"); @@ -163,7 +163,7 @@ int main(int argc, char** argv) { printf(" L ڣ\n"); } } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; diff --git a/Dev-C++/CourseBook/0202_Union/Union.h b/Dev-C++/CourseBook/0202_Union/Union.h index c089ede..5166733 100644 --- a/Dev-C++/CourseBook/0202_Union/Union.h +++ b/Dev-C++/CourseBook/0202_Union/Union.h @@ -8,10 +8,9 @@ #define UNION_H #include -#include "Status.h" //**01 **// +#include "Status.h" //**01 **// #include "SqList.h" //**02 Ա**// - /* * 㷨2.1 * diff --git a/Dev-C++/CourseBook/0203_MergeSqList/MergeSqList.cpp b/Dev-C++/CourseBook/0203_MergeSqList/MergeSqList.cpp index 4df7d41..22d973c 100644 --- a/Dev-C++/CourseBook/0203_MergeSqList/MergeSqList.cpp +++ b/Dev-C++/CourseBook/0203_MergeSqList/MergeSqList.cpp @@ -6,7 +6,6 @@ #include "MergeSqList.h" //**02 Ա**// - /* * 㷨2.2 * diff --git a/Dev-C++/CourseBook/0203_MergeSqList/MergeSqList.h b/Dev-C++/CourseBook/0203_MergeSqList/MergeSqList.h index 12704b0..341e527 100644 --- a/Dev-C++/CourseBook/0203_MergeSqList/MergeSqList.h +++ b/Dev-C++/CourseBook/0203_MergeSqList/MergeSqList.h @@ -11,7 +11,6 @@ #include #include "SqList.h" //**02 Ա**// - /* * 㷨2.2 * diff --git a/Dev-C++/CourseBook/0204_LinkList/LinkList-main.cpp b/Dev-C++/CourseBook/0204_LinkList/LinkList-main.cpp index f9eddbb..6adf62e 100644 --- a/Dev-C++/CourseBook/0204_LinkList/LinkList-main.cpp +++ b/Dev-C++/CourseBook/0204_LinkList/LinkList-main.cpp @@ -23,14 +23,14 @@ int main(int argc, char** argv) { printf(" ʼ L ...\n"); InitList(&L); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListEmpty \n"); { ListEmpty(L) ? printf(" L Ϊգ\n") : printf(" L Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListInsert \n"); @@ -40,7 +40,7 @@ int main(int argc, char** argv) { ListInsert(L, i, 2 * i); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListTraverse \n"); @@ -48,14 +48,14 @@ int main(int argc, char** argv) { printf(" L еԪΪL = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListLength \n"); { printf(" L ijΪ %d \n", ListLength(L)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListDelete \n"); @@ -74,7 +74,7 @@ int main(int argc, char** argv) { printf(" ɾԪأL = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GetElem \n"); @@ -82,7 +82,7 @@ int main(int argc, char** argv) { GetElem(L, 4, &e); printf(" L е 4 λõԪΪ \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LocateElem \n"); @@ -91,7 +91,7 @@ int main(int argc, char** argv) { GetElem(L, i, &e); printf(" L еһԪֵ \"7\" Ԫ \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PriorElem \n"); @@ -104,7 +104,7 @@ int main(int argc, char** argv) { printf(" Ԫ \"%d\" ǰڣ\n", cur_e); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" NextElem \n"); @@ -117,7 +117,7 @@ int main(int argc, char** argv) { printf(" Ԫ \"%d\" ĺ̲ڣ\n", cur_e); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearList \n"); @@ -130,7 +130,7 @@ int main(int argc, char** argv) { printf(" L "); ListEmpty(L) ? printf(" L Ϊգ\n") : printf(" L Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DestroyList \n"); @@ -143,7 +143,7 @@ int main(int argc, char** argv) { printf(" L "); L ? printf(" L ڣ\n") : printf(" L ڣ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CreateList_Head \n"); @@ -153,7 +153,7 @@ int main(int argc, char** argv) { printf(" ͷ巨 L = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CreateList_Tail \n"); @@ -163,7 +163,7 @@ int main(int argc, char** argv) { printf(" β巨 L = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/Dev-C++/CourseBook/0206_SLinkList/SLinkList-main.cpp b/Dev-C++/CourseBook/0206_SLinkList/SLinkList-main.cpp index c9fb486..9aea05b 100644 --- a/Dev-C++/CourseBook/0206_SLinkList/SLinkList-main.cpp +++ b/Dev-C++/CourseBook/0206_SLinkList/SLinkList-main.cpp @@ -25,14 +25,14 @@ int main(int argc, char** argv) { printf(" ʼ S ...\n"); InitList(space, &S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListEmpty \n"); { ListEmpty(space, S) ? printf(" S Ϊգ\n") : printf(" S Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListInsert \n"); @@ -42,7 +42,7 @@ int main(int argc, char** argv) { ListInsert(space, S, i, 2 * i); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListTraverse \n"); @@ -50,14 +50,14 @@ int main(int argc, char** argv) { printf(" S еԪΪS = "); ListTraverse(space, S, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListLength \n"); { printf(" S ijΪ %d \n", ListLength(space, S)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListDelete \n"); @@ -76,7 +76,7 @@ int main(int argc, char** argv) { printf(" ɾԪأS = "); ListTraverse(space, S, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GetElem \n"); @@ -84,7 +84,7 @@ int main(int argc, char** argv) { GetElem(space, S, 4, &e); printf(" S е 4 λõԪΪ \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LocateElem \n"); @@ -93,7 +93,7 @@ int main(int argc, char** argv) { GetElem(space, S, i, &e); printf(" S еһԪֵ \"7\" Ԫ \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PriorElem \n"); @@ -106,7 +106,7 @@ int main(int argc, char** argv) { printf(" Ԫ \"%d\" ǰڣ\n", cur_e); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" NextElem \n"); @@ -119,7 +119,7 @@ int main(int argc, char** argv) { printf(" Ԫ \"%d\" ĺ̲ڣ\n", cur_e); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearList \n"); @@ -132,7 +132,7 @@ int main(int argc, char** argv) { printf(" S "); ListEmpty(space, S) ? printf(" S Ϊգ\n") : printf(" S Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DestroyList \n"); @@ -145,7 +145,7 @@ int main(int argc, char** argv) { printf(" S "); S!=0 ? printf(" S ڣ\n") : printf(" S ڣ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/Dev-C++/CourseBook/0208_DuLinkList/DuLinkList-main.cpp b/Dev-C++/CourseBook/0208_DuLinkList/DuLinkList-main.cpp index 90cbb4f..ad44095 100644 --- a/Dev-C++/CourseBook/0208_DuLinkList/DuLinkList-main.cpp +++ b/Dev-C++/CourseBook/0208_DuLinkList/DuLinkList-main.cpp @@ -23,14 +23,14 @@ int main(int argc, char** argv) { printf(" ʼ˫ѭ L ...\n"); InitList(&L); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListEmpty \n"); { ListEmpty(L) ? printf(" L Ϊգ\n") : printf(" L Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListInsert \n"); @@ -40,7 +40,7 @@ int main(int argc, char** argv) { ListInsert(L, i, 2 * i); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListTraverse \n"); @@ -48,14 +48,14 @@ int main(int argc, char** argv) { printf(" L еԪΪL = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListLength \n"); { printf(" L ijΪ %d \n", ListLength(L)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListDelete \n"); @@ -74,7 +74,7 @@ int main(int argc, char** argv) { printf(" ɾԪأL = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GetElem \n"); @@ -82,7 +82,7 @@ int main(int argc, char** argv) { GetElem(L, 4, &e); printf(" L е 4 λõԪΪ \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LocateElem \n"); @@ -91,7 +91,7 @@ int main(int argc, char** argv) { GetElem(L, i, &e); printf(" L еһԪֵ \"7\" Ԫ \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PriorElem \n"); @@ -104,7 +104,7 @@ int main(int argc, char** argv) { printf(" Ԫ \"%d\" ǰڣ\n", cur_e); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" NextElem \n"); @@ -117,7 +117,7 @@ int main(int argc, char** argv) { printf(" Ԫ \"%d\" ĺ̲ڣ\n", cur_e); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearList \n"); @@ -130,7 +130,7 @@ int main(int argc, char** argv) { printf(" L "); ListEmpty(L) ? printf(" L Ϊգ\n") : printf(" L Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DestroyList \n"); @@ -143,7 +143,7 @@ int main(int argc, char** argv) { printf(" L "); L ? printf(" L ڣ\n") : printf(" L ڣ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/Dev-C++/CourseBook/0209_ELinkList/ELinkList-main.cpp b/Dev-C++/CourseBook/0209_ELinkList/ELinkList-main.cpp index 7d37082..37eb319 100644 --- a/Dev-C++/CourseBook/0209_ELinkList/ELinkList-main.cpp +++ b/Dev-C++/CourseBook/0209_ELinkList/ELinkList-main.cpp @@ -24,14 +24,14 @@ int main(int argc, char** argv) { printf(" ʼչ L ...\n"); InitList(&L); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListEmpty \n"); { ListEmpty(L) ? printf(" L Ϊգ\n") : printf(" L Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListInsert \n"); @@ -41,7 +41,7 @@ int main(int argc, char** argv) { ListInsert(&L, i, 2 * i); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListTraverse \n"); @@ -49,14 +49,14 @@ int main(int argc, char** argv) { printf(" L еԪΪL = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListLength \n"); { printf(" L ijΪ %d \n", ListLength(L)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListDelete \n"); @@ -75,7 +75,7 @@ int main(int argc, char** argv) { printf(" ɾԪأL = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LocateElem \n"); @@ -83,7 +83,7 @@ int main(int argc, char** argv) { r = LocateElem(L, 7, CmpGreater); printf(" L еһԪֵ \"7\" Ԫ \"%d\" \n", r->data); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PriorElem \n"); @@ -96,7 +96,7 @@ int main(int argc, char** argv) { printf(" Ԫ \"%d\" ǰڣ\n", r->data); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" NextElem \n"); @@ -109,7 +109,7 @@ int main(int argc, char** argv) { printf(" Ԫ \"%d\" ĺ̲ڣ\n", r->data); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" MakeNode \n"); @@ -121,7 +121,7 @@ int main(int argc, char** argv) { printf(" \"300\" ...\n"); MakeNode(&s, 300); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" InsFirst \n"); @@ -131,7 +131,7 @@ int main(int argc, char** argv) { printf(" L еԪΪL = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DelFirst \n"); @@ -142,7 +142,7 @@ int main(int argc, char** argv) { printf(" L еԪΪL = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" InsBefore \n"); @@ -154,7 +154,7 @@ int main(int argc, char** argv) { printf(" L еԪΪL = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" InsAfter \n"); @@ -166,7 +166,7 @@ int main(int argc, char** argv) { printf(" L еԪΪL = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Append \n"); @@ -179,7 +179,7 @@ int main(int argc, char** argv) { printf(" L еԪΪL = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Remove \n"); @@ -190,7 +190,7 @@ int main(int argc, char** argv) { printf(" L еԪΪL = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearList \n"); @@ -203,7 +203,7 @@ int main(int argc, char** argv) { printf(" L "); ListEmpty(L) ? printf(" L Ϊգ\n") : printf(" L Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DestroyList \n"); @@ -217,7 +217,7 @@ int main(int argc, char** argv) { L.head != NULL && L.tail != NULL ? printf(" L ڣ\n") : printf(" L ڣ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/Dev-C++/CourseBook/0211_Polynomial/Polynomial-main.cpp b/Dev-C++/CourseBook/0211_Polynomial/Polynomial-main.cpp index a4466a3..a28bd93 100644 --- a/Dev-C++/CourseBook/0211_Polynomial/Polynomial-main.cpp +++ b/Dev-C++/CourseBook/0211_Polynomial/Polynomial-main.cpp @@ -15,7 +15,7 @@ int main(int argc, char **argv) { printf(" ΪʾΪ %d ĶʽPb...\n", n); CreatPolyn(&Pb, n, "TestData_Pb.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PrintPolyn \n"); @@ -26,14 +26,14 @@ int main(int argc, char **argv) { printf(" һԪʽ Pb = "); PrintPolyn(Pb); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PolynLength \n"); { printf(" La Ϊ %d Lb Ϊ %d\n", PolynLength(Pa), PolynLength(Pb)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" AddPolyn \n"); @@ -46,7 +46,7 @@ int main(int argc, char **argv) { printf(" Pa = Pa + Pb = "); PrintPolyn(Pa); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" SubtractPolyn \n"); @@ -59,7 +59,7 @@ int main(int argc, char **argv) { printf(" Pa = Pa - Pb = "); PrintPolyn(Pa); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" MultiplyPolyn \n"); @@ -72,7 +72,7 @@ int main(int argc, char **argv) { printf(" Pa = Pa * Pb = "); PrintPolyn(Pa); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/Dev-C++/CourseBook/0301_SqStack/SqStack-main.cpp b/Dev-C++/CourseBook/0301_SqStack/SqStack-main.cpp index ae7df91..00df95e 100644 --- a/Dev-C++/CourseBook/0301_SqStack/SqStack-main.cpp +++ b/Dev-C++/CourseBook/0301_SqStack/SqStack-main.cpp @@ -2,7 +2,10 @@ #include "SqStack.h" //**03 ջͶ**// // ԺӡԪ -void PrintElem(SElemType e); +void PrintElem(SElemType e) { + printf("%d ", e); +} + int main(int argc, char** argv) { SqStack S; @@ -14,13 +17,13 @@ int main(int argc, char** argv) { printf(" ʼ˳ջ S ...\n"); InitStack(&S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StackEmpty \n"); { StackEmpty(S) ? printf(" S Ϊգ\n") : printf(" S Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Push \n"); { @@ -29,21 +32,21 @@ int main(int argc, char** argv) { printf(" \"%2d\" ѹջ S ...\n", 2 * i); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StackTraverse \n"); { printf(" S еԪΪS = "); StackTraverse(S, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StackLength \n"); { i = StackLength(S); printf(" S ijΪ %d \n", i); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Pop \n"); { @@ -52,14 +55,14 @@ int main(int argc, char** argv) { printf(" S еԪΪS = "); StackTraverse(S, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GetTop \n"); { GetTop(S, &e); printf(" ջԪصֵΪ \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearStack \n"); { @@ -71,7 +74,7 @@ int main(int argc, char** argv) { printf(" S "); StackEmpty(S) ? printf(" S Ϊգ\n") : printf(" S Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DestroyStack \n"); { @@ -83,12 +86,7 @@ int main(int argc, char** argv) { printf(" S "); S.base != NULL && S.top != NULL ? printf(" S ڣ\n") : printf(" S ڣ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } - -// ԺӡԪ -void PrintElem(SElemType e) { - printf("%d ", e); -} diff --git a/Dev-C++/CourseBook/0306_Hanoi/Hanoi.cpp b/Dev-C++/CourseBook/0306_Hanoi/Hanoi.cpp index c772b44..84b9b1a 100644 --- a/Dev-C++/CourseBook/0306_Hanoi/Hanoi.cpp +++ b/Dev-C++/CourseBook/0306_Hanoi/Hanoi.cpp @@ -6,6 +6,11 @@ #include "Hanoi.h" //**03 ջͶ**// +/* ȫֱ */ +Tower T; // ŵ +int gStep; // ͳƶ + + /* * 㷨3.5 * diff --git a/Dev-C++/CourseBook/0306_Hanoi/Hanoi.h b/Dev-C++/CourseBook/0306_Hanoi/Hanoi.h index 9ff9730..94d6018 100644 --- a/Dev-C++/CourseBook/0306_Hanoi/Hanoi.h +++ b/Dev-C++/CourseBook/0306_Hanoi/Hanoi.h @@ -19,12 +19,6 @@ typedef struct { int high[3]; // ĸ߶ȣе } Tower; -// ŵ -static Tower T; - -// ͳƶ -static int gStep; - /* * 㷨3.5 diff --git a/Dev-C++/CourseBook/0307_LinkQueue/LinkQueue-main.cpp b/Dev-C++/CourseBook/0307_LinkQueue/LinkQueue-main.cpp index 1e71482..f1e3db6 100644 --- a/Dev-C++/CourseBook/0307_LinkQueue/LinkQueue-main.cpp +++ b/Dev-C++/CourseBook/0307_LinkQueue/LinkQueue-main.cpp @@ -2,7 +2,10 @@ #include "LinkQueue.h" //**03 ջͶ**// // Ժӡ -void PrintElem(QElemType e); +void PrintElem(QElemType e) { + printf("%d ", e); +} + int main(int argc, char** argv) { LinkQueue Q; @@ -14,13 +17,13 @@ int main(int argc, char** argv) { printf(" ʼ Q ...\n"); InitQueue(&Q); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" QueueEmpty \n"); { QueueEmpty(Q) ? printf(" Q Ϊգ\n") : printf(" Q Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" EnQueue \n"); { @@ -29,21 +32,21 @@ int main(int argc, char** argv) { printf(" Ԫ \"%2d\" ...\n", 2 * i); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" QueueTraverse \n"); { printf(" Q еԪΪQ = "); QueueTraverse(Q, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" QueueLength \n"); { i = QueueLength(Q); printf(" Q ijΪ %d \n", i); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DeQueue \n"); { @@ -52,14 +55,14 @@ int main(int argc, char** argv) { printf(" Q еԪΪQ = "); QueueTraverse(Q, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GetHead \n"); { GetHead(Q, &e); printf(" ͷԪصֵΪ \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearQueue \n"); { @@ -71,7 +74,7 @@ int main(int argc, char** argv) { printf(" Q "); QueueEmpty(Q) ? printf(" Q Ϊգ\n") : printf(" Q Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DestroyQueue \n"); { @@ -83,12 +86,7 @@ int main(int argc, char** argv) { printf(" Q "); Q.front != NULL && Q.rear != NULL ? printf(" Q ڣ\n") : printf(" Q ڣ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } - -// Ժӡ -void PrintElem(QElemType e) { - printf("%d ", e); -} diff --git a/Dev-C++/CourseBook/0308_SqQueue/SqQueue-main.cpp b/Dev-C++/CourseBook/0308_SqQueue/SqQueue-main.cpp index 44cb59f..75f2fa6 100644 --- a/Dev-C++/CourseBook/0308_SqQueue/SqQueue-main.cpp +++ b/Dev-C++/CourseBook/0308_SqQueue/SqQueue-main.cpp @@ -2,7 +2,10 @@ #include "SqQueue.h" //**03 ջͶ**// // Ժӡ -void PrintElem(QElemType e); +void PrintElem(QElemType e) { + printf("%d ", e); +} + int main(int argc, char** argv) { SqQueue Q; @@ -14,13 +17,13 @@ int main(int argc, char** argv) { printf(" ʼѭ˳ Q ...\n"); InitQueue(&Q); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" QueueEmpty \n"); { QueueEmpty(Q) ? printf(" Q Ϊգ\n") : printf(" Q Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" EnQueue \n"); { @@ -29,21 +32,21 @@ int main(int argc, char** argv) { printf(" Ԫ \"%2d\" Q...\n", 2 * i); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" QueueTraverse \n"); { printf(" Q еԪΪQ = "); QueueTraverse(Q, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" QueueLength \n"); { i = QueueLength(Q); printf(" Q ijΪ %d \n", i); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DeQueue \n"); { @@ -52,14 +55,14 @@ int main(int argc, char** argv) { printf(" Q еԪΪQ = "); QueueTraverse(Q, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GetHead \n"); { GetHead(Q, &e); printf(" ͷԪصֵΪ \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearQueue \n"); { @@ -71,7 +74,7 @@ int main(int argc, char** argv) { printf(" Q "); QueueEmpty(Q) ? printf(" Q Ϊգ\n") : printf(" Q Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DestroyQueue \n"); { @@ -83,12 +86,7 @@ int main(int argc, char** argv) { printf(" Q "); Q.base != NULL ? printf(" Q ڣ\n") : printf(" Q ڣ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } - -// Ժӡ -void PrintElem(QElemType e) { - printf("%d ", e); -} diff --git a/Dev-C++/CourseBook/0309_BankQueuing/BankQueuing.cpp b/Dev-C++/CourseBook/0309_BankQueuing/BankQueuing.cpp index 836db55..795c0f9 100644 --- a/Dev-C++/CourseBook/0309_BankQueuing/BankQueuing.cpp +++ b/Dev-C++/CourseBook/0309_BankQueuing/BankQueuing.cpp @@ -9,6 +9,17 @@ #include "BankQueuing.h" //**03 ջͶ**// +/* ȫֱǰ涼gǣ */ +int gTotalTime; // ۼƿͻ +int gCustomerNum; // ۼƿͻʱ + +int gCloseTime; // ʱ,ÿӪҵ8Сʱ480 + +EventList gEv; // ¼洢д¼ +Event gEn; // ǰڴ¼ + +LinkQueue gQ[N+1]; // 4ͻ,0ŵԪ + /* * 㷨3.6 * @@ -165,7 +176,7 @@ void CustomerArrived() { // ǰͻ̶Ŷ EnQueue(&gQ[i], customer); - printf("%3dͻ %d Ŷ...\n", customer.Count, i); + printf("%3dͻ̨ %d Ŷ...\n", customer.Count, i); Show(); /* @@ -189,7 +200,7 @@ void CustomerDeparture() { // iеĶͷͻҵ񲢳 DeQueue(&gQ[i], &customer); - printf("%3dͻӶ %d 뿪...\n", customer.Count, i); + printf("%3dͻӹ̨ %d 뿪...\n", customer.Count, i); Show(); // ۼƿͻʱ @@ -308,16 +319,16 @@ void Show() { for(p = gQ[i].front; p; p = p->next) { if(p == gQ[i].front) { if(i == 1) { - printf("̨١"); + printf("̨š"); } if(i == 2) { - printf("̨ڡ"); + printf("̨ơ"); } if(i == 3) { - printf("̨ۡ"); + printf("̨ǡ"); } if(i == 4) { - printf("̨ܡ"); + printf("̨ȡ"); } } else { printf("%03d", p->data.Count); diff --git a/Dev-C++/CourseBook/0309_BankQueuing/BankQueuing.h b/Dev-C++/CourseBook/0309_BankQueuing/BankQueuing.h index 008483c..05ebbcd 100644 --- a/Dev-C++/CourseBook/0309_BankQueuing/BankQueuing.h +++ b/Dev-C++/CourseBook/0309_BankQueuing/BankQueuing.h @@ -23,17 +23,6 @@ /* Ͷ */ typedef LinkList EventList; //¼ͣΪ -/* ȫֱǰ涼gǣ */ -static int gTotalTime; // ۼƿͻ -static int gCustomerNum; // ۼƿͻʱ - -static int gCloseTime; // ʱ,ÿӪҵ8Сʱ480 - -static EventList gEv; // ¼洢д¼ -static Event gEn; // ǰڴ¼ - -static LinkQueue gQ[N+1]; // 4ͻ,0ŵԪ - /* * 㷨3.6 diff --git a/Dev-C++/CourseBook/0401_SString/SString-main.cpp b/Dev-C++/CourseBook/0401_SString/SString-main.cpp index e51a760..6fb2133 100644 --- a/Dev-C++/CourseBook/0401_SString/SString-main.cpp +++ b/Dev-C++/CourseBook/0401_SString/SString-main.cpp @@ -2,7 +2,16 @@ #include "SString.h" //**04 **// // Ժӡַ -void PrintElem(SString S); +void PrintElem(SString S) { + int i; + + for(i = 1; i <= S[0]; i++) { + printf("%c", S[i]); + } + + printf("\n"); +} + int main(int argc, char** argv) { char* chars = "01234567899876543210"; @@ -16,20 +25,20 @@ int main(int argc, char** argv) { printf(" S = "); PrintElem(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StrEmpty \n"); { StrEmpty(S) ? printf(" S Ϊգ\n") : printf(" S Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StrLength \n"); { i = StrLength(S); printf(" S ijΪ %d \n", i); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StrCopy \n"); { @@ -38,7 +47,7 @@ int main(int argc, char** argv) { printf(" T = "); PrintElem(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StrCompare \n"); { @@ -46,7 +55,7 @@ int main(int argc, char** argv) { i = StrCompare(S, T); i == 0 ? printf(" S==T\n") : (i < 0 ? printf(" ST\n")); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StrInsert \n"); { @@ -56,7 +65,7 @@ int main(int argc, char** argv) { printf(" S = "); PrintElem(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Index \n"); { @@ -65,7 +74,7 @@ int main(int argc, char** argv) { i = Index_1(S, T, 1); printf(" \"*****\" S еһγֵλΪ %d \n", i); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" SubString \n"); { @@ -74,7 +83,7 @@ int main(int argc, char** argv) { printf(" Sub = "); PrintElem(sub); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Replace \n"); { @@ -85,7 +94,7 @@ int main(int argc, char** argv) { printf(" S = "); PrintElem(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StrDelete \n"); { @@ -94,7 +103,7 @@ int main(int argc, char** argv) { printf(" S = "); PrintElem(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearString \n"); { @@ -106,7 +115,7 @@ int main(int argc, char** argv) { printf(" S "); StrEmpty(S) ? printf(" S Ϊգ\n") : printf(" S Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Concat \n"); { @@ -120,18 +129,7 @@ int main(int argc, char** argv) { printf(" Tmp = "); PrintElem(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } - -// Ժӡַ -void PrintElem(SString S) { - int i; - - for(i = 1; i <= S[0]; i++) { - printf("%c", S[i]); - } - - printf("\n"); -} diff --git a/Dev-C++/CourseBook/0402_HString/HString-main.cpp b/Dev-C++/CourseBook/0402_HString/HString-main.cpp index 7e84ab0..77453b3 100644 --- a/Dev-C++/CourseBook/0402_HString/HString-main.cpp +++ b/Dev-C++/CourseBook/0402_HString/HString-main.cpp @@ -2,7 +2,16 @@ #include "HString.h" //**04 **// // Ժӡַ -void PrintElem(HString S); +void PrintElem(HString S) { + int i; + + for(i = 0; i <= S.length-1; i++) { + printf("%c", S.ch[i]); + } + + printf("\n"); +} + int main(int argc, char** argv) { char* chars = "01234567899876543210"; @@ -16,20 +25,20 @@ int main(int argc, char** argv) { printf(" S = "); PrintElem(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StrEmpty \n"); { StrEmpty(S) ? printf(" S Ϊգ\n") : printf(" S Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StrLength \n"); { i = StrLength(S); printf(" S ijΪ %d \n", i); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StrCopy \n"); { @@ -38,7 +47,7 @@ int main(int argc, char** argv) { printf(" T = "); PrintElem(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StrCompare \n"); { @@ -46,7 +55,7 @@ int main(int argc, char** argv) { i = StrCompare(S, T); i == 0 ? printf(" S==T\n") : (i < 0 ? printf(" ST\n")); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StrInsert \n"); { @@ -56,7 +65,7 @@ int main(int argc, char** argv) { printf(" S = "); PrintElem(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Index \n"); { @@ -65,7 +74,7 @@ int main(int argc, char** argv) { i = Index(S, T, 1); printf(" \"*****\" S еһγֵλΪ %d \n", i); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" SubString \n"); { @@ -74,7 +83,7 @@ int main(int argc, char** argv) { printf(" Sub = "); PrintElem(sub); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Replace \n"); { @@ -85,7 +94,7 @@ int main(int argc, char** argv) { printf(" S = "); PrintElem(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StrDelete \n"); { @@ -94,7 +103,7 @@ int main(int argc, char** argv) { printf(" S = "); PrintElem(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearString \n"); { @@ -106,7 +115,7 @@ int main(int argc, char** argv) { printf(" S "); StrEmpty(S) ? printf(" S Ϊգ\n") : printf(" S Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Concat \n"); { @@ -120,18 +129,7 @@ int main(int argc, char** argv) { printf(" Tmp = "); PrintElem(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } - -// Ժӡַ -void PrintElem(HString S) { - int i; - - for(i = 0; i <= S.length-1; i++) { - printf("%c", S.ch[i]); - } - - printf("\n"); -} diff --git a/Dev-C++/CourseBook/0403_LString/LString-main.cpp b/Dev-C++/CourseBook/0403_LString/LString-main.cpp index f9e3faa..660e474 100644 --- a/Dev-C++/CourseBook/0403_LString/LString-main.cpp +++ b/Dev-C++/CourseBook/0403_LString/LString-main.cpp @@ -1,129 +1,5 @@ #include "LString.h" //**04 **// -// Ժӡַ -void PrintElem(LString S); - -int main(int argc, char** argv) { - char* chars = "01234567899876543210"; - LString S, T, sub, V; - int i; - - printf(" StrAssign \n"); - { - printf(" Ϊ S ֵ...\n"); - StrAssign(&S, chars); - printf(" S = "); - PrintElem(S); - } - PressEnterToContinue(); - - printf(" StrEmpty \n"); - { - StrEmpty(S) ? printf(" S Ϊգ\n") : printf(" S Ϊգ\n"); - } - PressEnterToContinue(); - - printf(" StrLength \n"); - { - i = StrLength(S); - printf(" S ijΪ %d \n", i); - } - PressEnterToContinue(); - - printf(" StrCopy \n"); - { - printf(" S T ...\n"); - StrCopy(&T, S); - printf(" T = "); - PrintElem(T); - } - PressEnterToContinue(); - - printf(" StrCompare \n"); - { - printf(" Ƚַ S T ...\n"); - i = StrCompare(S, T); - i == 0 ? printf(" S==T\n") : (i < 0 ? printf(" ST\n")); - } - PressEnterToContinue(); - - printf(" StrInsert \n"); - { - StrAssign(&T, "*****"); - printf(" \"*****\" 뵽 S ĵ 11 λô... \n"); - StrInsert(&S, 11, T); - printf(" S = "); - PrintElem(S); - } - PressEnterToContinue(); - - printf(" Index \n"); - { - StrAssign(&T, "*****"); - printf(" ȡ \"*****\" ڴ S еĵһγֵλ...\n"); - i = Index(S, T, 1); - printf(" \"*****\" S еһγֵλΪ %d \n", i); - } - PressEnterToContinue(); - - printf(" SubString \n"); - { - printf(" sub S е 11 ַ 5 ַ...\n"); - SubString(&sub, S, 11, 5); - printf(" Sub = "); - PrintElem(sub); - } - PressEnterToContinue(); - - printf(" Replace \n"); - { - StrAssign(&T, "*****"); - StrAssign(&V, "#####@@@@@"); - printf(" \"#####@@@@@\" 滻Sе \"*****\" ...\n"); - Replace(&S, T, V); - printf(" S = "); - PrintElem(S); - } - PressEnterToContinue(); - - printf(" StrDelete \n"); - { - printf(" ɾ S е 16 ַ 5 ַ...\n"); - StrDelete(&S, 16, 5); - printf(" S = "); - PrintElem(S); - } - PressEnterToContinue(); - - printf(" ClearString \n"); - { - printf(" S ǰ"); - StrEmpty(S) ? printf(" S Ϊգ\n") : printf(" S Ϊգ\n"); - - ClearString(&S); - - printf(" S "); - StrEmpty(S) ? printf(" S Ϊգ\n") : printf(" S Ϊգ\n"); - } - PressEnterToContinue(); - - printf(" Concat \n"); - { - LString Tmp, S1, S2; - - StrAssign(&S1, "+++++"); - StrAssign(&S2, "-----"); - - printf(" \"+++++\" \"-----\" γ Tmp ...\n"); - Concat(&Tmp, S1, S2); - printf(" Tmp = "); - PrintElem(Tmp); - } - PressEnterToContinue(); - - return 0; -} - // Ժӡַ void PrintElem(LString S) { int i = 0; @@ -150,3 +26,125 @@ void PrintElem(LString S) { printf("\n"); } + + +int main(int argc, char** argv) { + char* chars = "01234567899876543210"; + LString S, T, sub, V; + int i; + + printf(" StrAssign \n"); + { + printf(" Ϊ S ֵ...\n"); + StrAssign(&S, chars); + printf(" S = "); + PrintElem(S); + } + PressEnterToContinue(debug); + + printf(" StrEmpty \n"); + { + StrEmpty(S) ? printf(" S Ϊգ\n") : printf(" S Ϊգ\n"); + } + PressEnterToContinue(debug); + + printf(" StrLength \n"); + { + i = StrLength(S); + printf(" S ijΪ %d \n", i); + } + PressEnterToContinue(debug); + + printf(" StrCopy \n"); + { + printf(" S T ...\n"); + StrCopy(&T, S); + printf(" T = "); + PrintElem(T); + } + PressEnterToContinue(debug); + + printf(" StrCompare \n"); + { + printf(" Ƚַ S T ...\n"); + i = StrCompare(S, T); + i == 0 ? printf(" S==T\n") : (i < 0 ? printf(" ST\n")); + } + PressEnterToContinue(debug); + + printf(" StrInsert \n"); + { + StrAssign(&T, "*****"); + printf(" \"*****\" 뵽 S ĵ 11 λô... \n"); + StrInsert(&S, 11, T); + printf(" S = "); + PrintElem(S); + } + PressEnterToContinue(debug); + + printf(" Index \n"); + { + StrAssign(&T, "*****"); + printf(" ȡ \"*****\" ڴ S еĵһγֵλ...\n"); + i = Index(S, T, 1); + printf(" \"*****\" S еһγֵλΪ %d \n", i); + } + PressEnterToContinue(debug); + + printf(" SubString \n"); + { + printf(" sub S е 11 ַ 5 ַ...\n"); + SubString(&sub, S, 11, 5); + printf(" Sub = "); + PrintElem(sub); + } + PressEnterToContinue(debug); + + printf(" Replace \n"); + { + StrAssign(&T, "*****"); + StrAssign(&V, "#####@@@@@"); + printf(" \"#####@@@@@\" 滻Sе \"*****\" ...\n"); + Replace(&S, T, V); + printf(" S = "); + PrintElem(S); + } + PressEnterToContinue(debug); + + printf(" StrDelete \n"); + { + printf(" ɾ S е 16 ַ 5 ַ...\n"); + StrDelete(&S, 16, 5); + printf(" S = "); + PrintElem(S); + } + PressEnterToContinue(debug); + + printf(" ClearString \n"); + { + printf(" S ǰ"); + StrEmpty(S) ? printf(" S Ϊգ\n") : printf(" S Ϊգ\n"); + + ClearString(&S); + + printf(" S "); + StrEmpty(S) ? printf(" S Ϊգ\n") : printf(" S Ϊգ\n"); + } + PressEnterToContinue(debug); + + printf(" Concat \n"); + { + LString Tmp, S1, S2; + + StrAssign(&S1, "+++++"); + StrAssign(&S2, "-----"); + + printf(" \"+++++\" \"-----\" γ Tmp ...\n"); + Concat(&Tmp, S1, S2); + printf(" Tmp = "); + PrintElem(Tmp); + } + PressEnterToContinue(debug); + + return 0; +} diff --git a/Dev-C++/CourseBook/0404_KMP/KMP-main.cpp b/Dev-C++/CourseBook/0404_KMP/KMP-main.cpp index 451bec1..ac666f4 100644 --- a/Dev-C++/CourseBook/0404_KMP/KMP-main.cpp +++ b/Dev-C++/CourseBook/0404_KMP/KMP-main.cpp @@ -1,7 +1,16 @@ #include "KMP.h" //**04 **// // Ժӡַ -void PrintElem(SString S); +void PrintElem(SString S) { + int i; + + for(i = 1; i <= S[0]; i++) { + printf("%c", S[i]); + } + + printf("\n"); +} + int main(int argc, char** argv) { char* s = "abaaabcaabaabcacabaabcaabaabcac"; @@ -51,14 +60,3 @@ int main(int argc, char** argv) { return 0; } - -// Ժӡַ -void PrintElem(SString S) { - int i; - - for(i = 1; i <= S[0]; i++) { - printf("%c", S[i]); - } - - printf("\n"); -} diff --git a/Dev-C++/CourseBook/0501_Array/Array-main.cpp b/Dev-C++/CourseBook/0501_Array/Array-main.cpp index 367298f..2e50ffa 100644 --- a/Dev-C++/CourseBook/0501_Array/Array-main.cpp +++ b/Dev-C++/CourseBook/0501_Array/Array-main.cpp @@ -59,7 +59,7 @@ int main(int argc, char** argv) { printf(" ʼһάΪ<2,3,4>ά A ...\n"); InitArray(&A, 3, 2, 3, 4); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Assign \n"); @@ -78,7 +78,7 @@ int main(int argc, char** argv) { printf(" A = "); ArrayPrint(A); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Value \n"); @@ -89,7 +89,7 @@ int main(int argc, char** argv) { Value(A, &x, 1, 1, 1); printf(" A[1][1][1] = %d\n", x); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DestroyArray \n"); @@ -102,7 +102,7 @@ int main(int argc, char** argv) { printf(" A "); A.dim != 0 ? printf(" A ڣ\n") : printf(" A ڣ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; diff --git a/Dev-C++/CourseBook/0502_TSMatrix/TSMatrix-main.cpp b/Dev-C++/CourseBook/0502_TSMatrix/TSMatrix-main.cpp index 855523a..5f8b939 100644 --- a/Dev-C++/CourseBook/0502_TSMatrix/TSMatrix-main.cpp +++ b/Dev-C++/CourseBook/0502_TSMatrix/TSMatrix-main.cpp @@ -10,7 +10,7 @@ int main(int argc, char** argv) { CreateSMatrix(&M, "TestData_M.txt"); CreateSMatrix(&N, "TestData_N.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PrintSMatrix \n"); @@ -21,7 +21,7 @@ int main(int argc, char** argv) { printf(" N = \n"); PrintSMatrix(N); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CopySMatrix \n"); @@ -34,7 +34,7 @@ int main(int argc, char** argv) { printf(" Tmp = \n"); PrintSMatrix(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" AddSMatrix \n"); @@ -46,7 +46,7 @@ int main(int argc, char** argv) { printf(" Q1 = M + N = \n"); PrintSMatrix(Q1); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" SubSMatrix \n"); @@ -58,7 +58,7 @@ int main(int argc, char** argv) { printf(" Q2 = M - N = \n"); PrintSMatrix(Q2); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" MultSMatrix \n"); @@ -70,7 +70,7 @@ int main(int argc, char** argv) { printf(" Q3 = M * N = \n"); PrintSMatrix(Q3); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" TransposeSMatrix \n"); @@ -82,7 +82,7 @@ int main(int argc, char** argv) { printf(" T1 = M(T) = \n"); PrintSMatrix(T1); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" FastTransposeSMatrix \n"); @@ -94,7 +94,7 @@ int main(int argc, char** argv) { printf(" T2 = M(T) = \n"); PrintSMatrix(T2); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DestroySMatrix \n"); @@ -107,7 +107,7 @@ int main(int argc, char** argv) { printf(" M "); !M.mu && !M.nu && !M.tu ? printf(" M ڣ\n") : printf(" M ڣ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/Dev-C++/CourseBook/0503_RLSMatrix/RLSMatrix-main.cpp b/Dev-C++/CourseBook/0503_RLSMatrix/RLSMatrix-main.cpp index 190054a..75943bb 100644 --- a/Dev-C++/CourseBook/0503_RLSMatrix/RLSMatrix-main.cpp +++ b/Dev-C++/CourseBook/0503_RLSMatrix/RLSMatrix-main.cpp @@ -10,7 +10,7 @@ int main(int argc, char** argv) { CreateSMatrix(&M, "TestData_M.txt"); CreateSMatrix(&N, "TestData_N.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PrintSMatrix \n"); @@ -21,7 +21,7 @@ int main(int argc, char** argv) { printf(" N = \n"); PrintSMatrix(N); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CopySMatrix \n"); @@ -34,7 +34,7 @@ int main(int argc, char** argv) { printf(" Tmp = \n"); PrintSMatrix(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" AddSMatrix \n"); @@ -46,7 +46,7 @@ int main(int argc, char** argv) { printf(" Q1 = M + N = \n"); PrintSMatrix(Q1); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" SubtSMatrix \n"); @@ -58,7 +58,7 @@ int main(int argc, char** argv) { printf(" Q2 = M - N = \n"); PrintSMatrix(Q2); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" MultSMatrix \n"); @@ -70,7 +70,7 @@ int main(int argc, char** argv) { printf(" Q3 = M * N = \n"); PrintSMatrix(Q3); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" TransposeSMatrix \n"); @@ -82,7 +82,7 @@ int main(int argc, char** argv) { printf(" T1 = M(T) = \n"); PrintSMatrix(T1); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" FastTransposeSMatrix \n"); @@ -94,7 +94,7 @@ int main(int argc, char** argv) { printf(" T2 = M(T) = \n"); PrintSMatrix(T2); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DestroySMatrix \n"); @@ -107,7 +107,7 @@ int main(int argc, char** argv) { printf(" M "); !M.mu && !M.nu && !M.tu ? printf(" M ڣ\n") : printf(" M ڣ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/Dev-C++/CourseBook/0504_CrossList/CrossList-main.cpp b/Dev-C++/CourseBook/0504_CrossList/CrossList-main.cpp index 27a899a..e80a066 100644 --- a/Dev-C++/CourseBook/0504_CrossList/CrossList-main.cpp +++ b/Dev-C++/CourseBook/0504_CrossList/CrossList-main.cpp @@ -10,7 +10,7 @@ int main(int argc, char** argv) { CreateSMatrix(&M, "TestData_M.txt"); CreateSMatrix(&N, "TestData_N.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PrintSMatrix \n"); @@ -21,7 +21,7 @@ int main(int argc, char** argv) { printf(" N = \n"); PrintSMatrix(N); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CopySMatrix \n"); @@ -34,7 +34,7 @@ int main(int argc, char** argv) { printf(" Tmp = \n"); PrintSMatrix(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" AddSMatrix \n"); @@ -46,7 +46,7 @@ int main(int argc, char** argv) { printf(" Q1 = M + N = \n"); PrintSMatrix(Q1); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" SubtSMatrix \n"); @@ -58,7 +58,7 @@ int main(int argc, char** argv) { printf(" Q2 = M - N = \n"); PrintSMatrix(Q2); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" MultSMatrix \n"); @@ -70,7 +70,7 @@ int main(int argc, char** argv) { printf(" Q3 = M * N = \n"); PrintSMatrix(Q3); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" TransposeSMatrix \n"); @@ -82,7 +82,7 @@ int main(int argc, char** argv) { printf(" T = M(T) = \n"); PrintSMatrix(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DestroySMatrix \n"); @@ -95,7 +95,7 @@ int main(int argc, char** argv) { printf(" M "); !M.mu && !M.nu && !M.tu ? printf(" M ڣ\n") : printf(" M ڣ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/Dev-C++/CourseBook/0505_GList-HT/GList-HT-main.cpp b/Dev-C++/CourseBook/0505_GList-HT/GList-HT-main.cpp index b54376d..6e9a0bd 100644 --- a/Dev-C++/CourseBook/0505_GList-HT/GList-HT-main.cpp +++ b/Dev-C++/CourseBook/0505_GList-HT/GList-HT-main.cpp @@ -1,7 +1,11 @@ #include #include "GList-HT.h" //**05 ͹**// + +// ӡԭ +void PrintElem(AtomType e) { + printf("%c ", e); +} -void PrintElem(AtomType e); //ӡԭ int main(int argc, char** argv) { GList Tmp, G; @@ -13,7 +17,7 @@ int main(int argc, char** argv) { printf(" յĹ Tmp ...\n"); InitGList(&Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GListEmpty \n"); { @@ -22,7 +26,7 @@ int main(int argc, char** argv) { tag = GListEmpty(Tmp); tag ? printf(" Tmp Ϊգ\n") : printf(" Tmp Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CreateGList \n"); { @@ -42,7 +46,7 @@ int main(int argc, char** argv) { StrAssign(S3, s3); CreateGList(&g3, S3); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" InsertFirst \n"); { @@ -51,7 +55,7 @@ int main(int argc, char** argv) { InsertFirst(&Tmp, g2); InsertFirst(&Tmp, g1); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Traverse \n"); { @@ -59,14 +63,14 @@ int main(int argc, char** argv) { Traverse(Tmp, PrintElem); printf("\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PrintGList \n"); { printf(" Tmp = "); PrintGList(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CopyGList \n"); { @@ -74,7 +78,7 @@ int main(int argc, char** argv) { CopyGList(&G, Tmp); PrintGList(G); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DeleteFirst \n"); { @@ -88,19 +92,19 @@ int main(int argc, char** argv) { printf(" Tmp = "); PrintGList(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GListLength \n"); { printf(" G ijΪ %d \n", GListLength(G)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GListDepth \n"); { printf(" G Ϊ %d\n", GListDepth(G)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GetHead \n"); { @@ -110,7 +114,7 @@ int main(int argc, char** argv) { H = GetHead(G); PrintGList(H); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GetTail \n"); { @@ -120,7 +124,7 @@ int main(int argc, char** argv) { T = GetTail(G); PrintGList(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DestroyGList \n"); { @@ -132,11 +136,7 @@ int main(int argc, char** argv) { printf(" G "); G ? printf(" G ڣ\n") : printf(" G ڣ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } - -void PrintElem(AtomType e) { - printf("%c ", e); -} diff --git a/Dev-C++/CourseBook/0506_GList-E/GList-E-main.cpp b/Dev-C++/CourseBook/0506_GList-E/GList-E-main.cpp index b33b5e8..9d6ac6c 100644 --- a/Dev-C++/CourseBook/0506_GList-E/GList-E-main.cpp +++ b/Dev-C++/CourseBook/0506_GList-E/GList-E-main.cpp @@ -1,7 +1,11 @@ #include #include "GList-E.h" //**05 ͹**// -void PrintElem(AtomType e); //ӡԭ +// ӡԭ +void PrintElem(AtomType e) { + printf("%c ", e); +} + int main(int argc, char** argv) { GList Tmp, G; @@ -13,7 +17,7 @@ int main(int argc, char** argv) { printf(" յĹ Tmp ...\n"); InitGList(&Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GListEmpty \n"); { @@ -22,7 +26,7 @@ int main(int argc, char** argv) { tag = GListEmpty(Tmp); tag ? printf(" Tmp Ϊգ\n") : printf(" Tmp Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CreateGList \n"); { @@ -42,7 +46,7 @@ int main(int argc, char** argv) { StrAssign(S3, s3); CreateGList(&g3, S3); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" InsertFirst \n"); { @@ -51,7 +55,7 @@ int main(int argc, char** argv) { InsertFirst(&Tmp, g2); InsertFirst(&Tmp, g1); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Traverse \n"); { @@ -59,14 +63,14 @@ int main(int argc, char** argv) { Traverse(Tmp, PrintElem); printf("\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PrintGList \n"); { printf(" Tmp = "); PrintGList(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CopyGList \n"); { @@ -74,7 +78,7 @@ int main(int argc, char** argv) { CopyGList(&G, Tmp); PrintGList(G); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DeleteFirst \n"); { @@ -88,19 +92,19 @@ int main(int argc, char** argv) { printf(" Tmp = "); PrintGList(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GListLength \n"); { printf(" G ijΪ%d\n", GListLength(G)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GListDepth_1 \n"); { printf(" G Ϊ%d\n", GListDepth(G)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GetHead \n"); { @@ -110,7 +114,7 @@ int main(int argc, char** argv) { H = GetHead(G); PrintGList(H); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GetTail \n"); { @@ -120,7 +124,7 @@ int main(int argc, char** argv) { T = GetTail(G); PrintGList(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DestroyGList \n"); { @@ -132,11 +136,7 @@ int main(int argc, char** argv) { printf(" G "); G ? printf(" G ڣ\n") : printf(" G ڣ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } - -void PrintElem(AtomType e) { - printf("%c ", e); -} diff --git a/Dev-C++/CourseBook/0601_SqBiTree/SqBiTree-main.cpp b/Dev-C++/CourseBook/0601_SqBiTree/SqBiTree-main.cpp index 2227b81..efe0c33 100644 --- a/Dev-C++/CourseBook/0601_SqBiTree/SqBiTree-main.cpp +++ b/Dev-C++/CourseBook/0601_SqBiTree/SqBiTree-main.cpp @@ -17,7 +17,7 @@ int main(int argc, char* argv[]) { printf(" ʼն T ...\n"); InitBiTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CreateBiTree \n"); @@ -25,14 +25,14 @@ int main(int argc, char* argv[]) { printf(" д T ...\n"); CreateBiTree(T, "TestData_Pre.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" BiTreeDepth \n"); { printf(" T Ϊ%d \n", BiTreeDepth(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PrintTree \n"); @@ -40,7 +40,7 @@ int main(int argc, char* argv[]) { printf(" Ľṹӡ T ...\n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PreOrderTraverse \n"); @@ -48,7 +48,7 @@ int main(int argc, char* argv[]) { printf(" ǰ T = "); PreOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" InOrderTraverse \n"); @@ -56,7 +56,7 @@ int main(int argc, char* argv[]) { printf(" T = "); InOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PostOrderTraverse \n"); @@ -64,7 +64,7 @@ int main(int argc, char* argv[]) { printf(" T = "); PostOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LevelOrderTraverse \n"); @@ -72,7 +72,7 @@ int main(int argc, char* argv[]) { printf(" T = "); LevelOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Value \n"); @@ -80,7 +80,7 @@ int main(int argc, char* argv[]) { TElemType e = 'F'; printf(" %c ֵΪ %c\n", e, Value(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Assign \n"); @@ -91,14 +91,14 @@ int main(int argc, char* argv[]) { Assign(T, e, value); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Root \n"); { printf(" T ĸΪ %c\n", Root(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Parent \n"); @@ -106,7 +106,7 @@ int main(int argc, char* argv[]) { TElemType e = 'E'; printf(" %c ˫Ϊ%c \n", e, Parent(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LeftChildRightChild \n"); @@ -114,7 +114,7 @@ int main(int argc, char* argv[]) { TElemType e = 'E'; printf(" %c ӽֵΪ%c ҺӽֵΪ%c\n", e, LeftChild(T, e), RightChild(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LeftSibling \n"); @@ -122,7 +122,7 @@ int main(int argc, char* argv[]) { TElemType e = 'I'; printf(" %c ֵΪ%c\n", e, LeftSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" RightSibling \n"); @@ -130,7 +130,7 @@ int main(int argc, char* argv[]) { TElemType e = 'H'; printf(" %c ֵΪ%c\n", e, RightSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" InsertChild \n"); @@ -157,7 +157,7 @@ int main(int argc, char* argv[]) { InsertChild(T, p2, 0, c2); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DeleteChild \n"); @@ -173,7 +173,7 @@ int main(int argc, char* argv[]) { DeleteChild(T, p2, 0); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearBiTreeBiTreeEmpty \n"); @@ -186,7 +186,7 @@ int main(int argc, char* argv[]) { printf(" պ"); BiTreeEmpty(T) ? printf("T Ϊգ\n") : printf("T Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/Dev-C++/CourseBook/0602_BiTree/BiTree-main.cpp b/Dev-C++/CourseBook/0602_BiTree/BiTree-main.cpp index a4365ff..3c49d2d 100644 --- a/Dev-C++/CourseBook/0602_BiTree/BiTree-main.cpp +++ b/Dev-C++/CourseBook/0602_BiTree/BiTree-main.cpp @@ -17,7 +17,7 @@ int main(int argc, char* argv[]) { printf(" ʼն T ...\n"); InitBiTree(&T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CreateBiTree \n"); @@ -25,14 +25,14 @@ int main(int argc, char* argv[]) { printf(" д T ...\n"); CreateBiTree(&T, "TestData_Pre.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" BiTreeDepth \n"); { printf(" T Ϊ%d \n", BiTreeDepth(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PrintTree \n"); @@ -40,7 +40,7 @@ int main(int argc, char* argv[]) { printf(" Ľṹӡ T ...\n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PreOrderTraverse \n"); @@ -48,7 +48,7 @@ int main(int argc, char* argv[]) { printf(" ǰ T = "); PreOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" InOrderTraverse \n"); @@ -56,7 +56,7 @@ int main(int argc, char* argv[]) { printf(" T = "); InOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PostOrderTraverse \n"); @@ -64,7 +64,7 @@ int main(int argc, char* argv[]) { printf(" T = "); PostOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LevelOrderTraverse \n"); @@ -72,7 +72,7 @@ int main(int argc, char* argv[]) { printf(" T = "); LevelOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Value \n"); @@ -80,7 +80,7 @@ int main(int argc, char* argv[]) { TElemType e = 'F'; printf(" %c ֵΪ %c\n", e, Value(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Assign \n"); @@ -91,14 +91,14 @@ int main(int argc, char* argv[]) { Assign(T, e, value); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Root \n"); { printf(" T ĸΪ %c\n", Root(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Parent \n"); @@ -106,7 +106,7 @@ int main(int argc, char* argv[]) { TElemType e = 'E'; printf(" %c ˫Ϊ%c \n", e, Parent(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LeftChildRightChild \n"); @@ -114,7 +114,7 @@ int main(int argc, char* argv[]) { TElemType e = 'E'; printf(" %c ӽֵΪ%c ҺӽֵΪ%c\n", e, LeftChild(T, e), RightChild(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LeftSibling \n"); @@ -122,7 +122,7 @@ int main(int argc, char* argv[]) { TElemType e = 'I'; printf(" %c ֵΪ%c\n", e, LeftSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" RightSibling \n"); @@ -130,7 +130,7 @@ int main(int argc, char* argv[]) { TElemType e = 'H'; printf(" %c ֵΪ%c\n", e, RightSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" InsertChild \n"); @@ -157,7 +157,7 @@ int main(int argc, char* argv[]) { InsertChild(T, p2, 0, c2); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DeleteChild \n"); @@ -173,7 +173,7 @@ int main(int argc, char* argv[]) { DeleteChild(T, p2, 0); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearBiTreeBiTreeEmpty \n"); @@ -186,7 +186,7 @@ int main(int argc, char* argv[]) { printf(" պ"); BiTreeEmpty(T) ? printf("T Ϊգ\n") : printf("T Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/Dev-C++/CourseBook/0603_BiTriTree/BiTriTree-main.cpp b/Dev-C++/CourseBook/0603_BiTriTree/BiTriTree-main.cpp index 3533f67..f3a0d93 100644 --- a/Dev-C++/CourseBook/0603_BiTriTree/BiTriTree-main.cpp +++ b/Dev-C++/CourseBook/0603_BiTriTree/BiTriTree-main.cpp @@ -16,7 +16,7 @@ int main(int argc, char* argv[]) { printf(" ʼն T ...\n"); InitBiTree(&T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CreateBiTree \n"); @@ -24,14 +24,14 @@ int main(int argc, char* argv[]) { printf(" д T ...\n"); CreateBiTree(&T, "TestData_Pre.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" BiTreeDepth \n"); { printf(" T Ϊ%d \n", BiTreeDepth(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PrintTree \n"); @@ -39,7 +39,7 @@ int main(int argc, char* argv[]) { printf(" Ľṹӡ T ...\n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PreOrderTraverse \n"); @@ -47,7 +47,7 @@ int main(int argc, char* argv[]) { printf(" ǰ T = "); PreOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" InOrderTraverse \n"); @@ -55,7 +55,7 @@ int main(int argc, char* argv[]) { printf(" T = "); InOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PostOrderTraverse \n"); @@ -63,7 +63,7 @@ int main(int argc, char* argv[]) { printf(" T = "); PostOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LevelOrderTraverse \n"); @@ -71,7 +71,7 @@ int main(int argc, char* argv[]) { printf(" T = "); LevelOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Value \n"); @@ -79,7 +79,7 @@ int main(int argc, char* argv[]) { TElemType e = 'F'; printf(" %c ֵΪ %c\n", e, Value(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Assign \n"); @@ -90,14 +90,14 @@ int main(int argc, char* argv[]) { Assign(T, e, value); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Root \n"); { printf(" T ĸΪ %c\n", Root(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Parent \n"); @@ -105,7 +105,7 @@ int main(int argc, char* argv[]) { TElemType e = 'E'; printf(" %c ˫Ϊ%c \n", e, Parent(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LeftChildRightChild \n"); @@ -113,7 +113,7 @@ int main(int argc, char* argv[]) { TElemType e = 'E'; printf(" %c ӽֵΪ%c ҺӽֵΪ%c\n", e, LeftChild(T, e), RightChild(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LeftSibling \n"); @@ -121,7 +121,7 @@ int main(int argc, char* argv[]) { TElemType e = 'I'; printf(" %c ֵΪ%c\n", e, LeftSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" RightSibling \n"); @@ -129,7 +129,7 @@ int main(int argc, char* argv[]) { TElemType e = 'H'; printf(" %c ֵΪ%c\n", e, RightSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" InsertChild \n"); @@ -156,7 +156,7 @@ int main(int argc, char* argv[]) { InsertChild(T, p2, 0, c2); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DeleteChild \n"); @@ -172,7 +172,7 @@ int main(int argc, char* argv[]) { DeleteChild(T, p2, 0); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearBiTreeBiTreeEmpty \n"); @@ -185,7 +185,7 @@ int main(int argc, char* argv[]) { printf(" պ"); BiTreeEmpty(T) ? printf("T Ϊգ\n") : printf("T Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/Dev-C++/CourseBook/0604_BiThrTree/BiThrTree-main.cpp b/Dev-C++/CourseBook/0604_BiThrTree/BiThrTree-main.cpp index 032bbd1..600f6cc 100644 --- a/Dev-C++/CourseBook/0604_BiThrTree/BiThrTree-main.cpp +++ b/Dev-C++/CourseBook/0604_BiThrTree/BiThrTree-main.cpp @@ -24,5 +24,5 @@ int main(int argc, char* argv[]) { printf(" ȫ...\n"); InOrderTraverse_Thr(Thr, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); } diff --git a/Dev-C++/CourseBook/0605_PTree/PTree-main.cpp b/Dev-C++/CourseBook/0605_PTree/PTree-main.cpp index aeeefad..d077e80 100644 --- a/Dev-C++/CourseBook/0605_PTree/PTree-main.cpp +++ b/Dev-C++/CourseBook/0605_PTree/PTree-main.cpp @@ -17,7 +17,7 @@ int main(int argc, char* argv[]) { printf(" ʼ T ...\n"); InitTree(&T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CreateTree \n"); @@ -25,14 +25,14 @@ int main(int argc, char* argv[]) { printf(" д T ...\n"); CreateTree(&T, "TestData_T.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" TreeDepth \n"); { printf(" T Ϊ%d \n", TreeDepth(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PrintTree \n"); @@ -41,7 +41,7 @@ int main(int argc, char* argv[]) { printf(" T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PreOrderTraverse \n"); @@ -49,7 +49,7 @@ int main(int argc, char* argv[]) { printf(" ǰ T = "); PreOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PostOrderTraverse \n"); @@ -57,7 +57,7 @@ int main(int argc, char* argv[]) { printf(" T = "); PostOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LevelOrderTraverse \n"); @@ -65,7 +65,7 @@ int main(int argc, char* argv[]) { printf(" T = "); LevelOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Value \n"); @@ -73,7 +73,7 @@ int main(int argc, char* argv[]) { TElemType e = 'F'; printf(" %c ֵΪ %c\n", e, Value(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Assign \n"); @@ -85,14 +85,14 @@ int main(int argc, char* argv[]) { printf(" T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Root \n"); { printf(" T ĸΪ %c\n", Root(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Parent \n"); @@ -100,7 +100,7 @@ int main(int argc, char* argv[]) { TElemType e = 'E'; printf(" %c ˫Ϊ%c \n", e, Parent(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ChildCount \n"); @@ -108,7 +108,7 @@ int main(int argc, char* argv[]) { TElemType e = 'X'; printf(" %c %d \n", e, ChildCount(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Child \n"); @@ -117,7 +117,7 @@ int main(int argc, char* argv[]) { int i = 2; printf(" %c ĵ %d ӽֵΪ%c \n", e, i, Child(T, e, i)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LeftSibling \n"); @@ -125,7 +125,7 @@ int main(int argc, char* argv[]) { TElemType e = 'H'; printf(" %c ֵΪ%c\n", e, LeftSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" RightSibling \n"); @@ -133,7 +133,7 @@ int main(int argc, char* argv[]) { TElemType e = 'H'; printf(" %c ֵΪ%c\n", e, RightSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" InsertChild \n"); @@ -153,7 +153,7 @@ int main(int argc, char* argv[]) { printf(" T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DeleteChild \n"); @@ -166,7 +166,7 @@ int main(int argc, char* argv[]) { printf(" T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearTreeTreeEmpty \n"); @@ -179,7 +179,7 @@ int main(int argc, char* argv[]) { printf(" պ"); TreeEmpty(T) ? printf("T Ϊգ\n") : printf("T Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/Dev-C++/CourseBook/0606_CTree/CTree-main.cpp b/Dev-C++/CourseBook/0606_CTree/CTree-main.cpp index 047ad9a..1763723 100644 --- a/Dev-C++/CourseBook/0606_CTree/CTree-main.cpp +++ b/Dev-C++/CourseBook/0606_CTree/CTree-main.cpp @@ -17,7 +17,7 @@ int main(int argc, char* argv[]) { printf(" ʼ T ...\n"); InitTree(&T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CreateTree \n"); @@ -25,14 +25,14 @@ int main(int argc, char* argv[]) { printf(" д T ...\n"); CreateTree(&T, "TestData_T.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" TreeDepth \n"); { printf(" T Ϊ%d \n", TreeDepth(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PrintTree \n"); @@ -41,7 +41,7 @@ int main(int argc, char* argv[]) { printf(" T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PreOrderTraverse \n"); @@ -49,7 +49,7 @@ int main(int argc, char* argv[]) { printf(" ǰ T = "); PreOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PostOrderTraverse \n"); @@ -57,7 +57,7 @@ int main(int argc, char* argv[]) { printf(" T = "); PostOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LevelOrderTraverse \n"); @@ -65,7 +65,7 @@ int main(int argc, char* argv[]) { printf(" T = "); LevelOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Value \n"); @@ -73,7 +73,7 @@ int main(int argc, char* argv[]) { TElemType e = 'F'; printf(" %c ֵΪ %c\n", e, Value(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Assign \n"); @@ -85,14 +85,14 @@ int main(int argc, char* argv[]) { printf(" T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Root \n"); { printf(" T ĸΪ %c\n", Root(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Parent \n"); @@ -100,7 +100,7 @@ int main(int argc, char* argv[]) { TElemType e = 'E'; printf(" %c ˫Ϊ%c \n", e, Parent(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ChildCount \n"); @@ -108,7 +108,7 @@ int main(int argc, char* argv[]) { TElemType e = 'X'; printf(" %c %d \n", e, ChildCount(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Child \n"); @@ -117,7 +117,7 @@ int main(int argc, char* argv[]) { int i = 2; printf(" %c ĵ %d ӽֵΪ%c \n", e, i, Child(T, e, i)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LeftSibling \n"); @@ -125,7 +125,7 @@ int main(int argc, char* argv[]) { TElemType e = 'H'; printf(" %c ֵΪ%c\n", e, LeftSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" RightSibling \n"); @@ -133,7 +133,7 @@ int main(int argc, char* argv[]) { TElemType e = 'H'; printf(" %c ֵΪ%c\n", e, RightSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" InsertChild \n"); @@ -153,7 +153,7 @@ int main(int argc, char* argv[]) { printf(" T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DeleteChild \n"); @@ -166,7 +166,7 @@ int main(int argc, char* argv[]) { printf(" T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearTreeTreeEmpty \n"); @@ -179,7 +179,7 @@ int main(int argc, char* argv[]) { printf(" պ"); TreeEmpty(T) ? printf("T Ϊգ\n") : printf("T Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/Dev-C++/CourseBook/0607_CSTree/CSTree-main.cpp b/Dev-C++/CourseBook/0607_CSTree/CSTree-main.cpp index 5b3864c..be1ea85 100644 --- a/Dev-C++/CourseBook/0607_CSTree/CSTree-main.cpp +++ b/Dev-C++/CourseBook/0607_CSTree/CSTree-main.cpp @@ -1,6 +1,6 @@ #include #include "Status.h" //**01 **// -#include "CSTree.h" //**06 Ͷ**// +#include "CSTree.h" //**06 Ͷ**// // ԺӡԪ Status PrintElem(TElemType c) { @@ -17,7 +17,7 @@ int main(int argc, char* argv[]) { printf(" ʼ T ...\n"); InitTree(&T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CreateTree \n"); @@ -25,14 +25,14 @@ int main(int argc, char* argv[]) { printf(" д T ...\n"); CreateTree(&T, "TestData_T.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" TreeDepth \n"); { printf(" T Ϊ%d \n", TreeDepth(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PrintTree \n"); @@ -41,7 +41,7 @@ int main(int argc, char* argv[]) { printf(" T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PreOrderTraverse \n"); @@ -49,7 +49,7 @@ int main(int argc, char* argv[]) { printf(" ǰ T = "); PreOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PostOrderTraverse \n"); @@ -57,7 +57,7 @@ int main(int argc, char* argv[]) { printf(" T = "); PostOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LevelOrderTraverse \n"); @@ -65,7 +65,7 @@ int main(int argc, char* argv[]) { printf(" T = "); LevelOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Value \n"); @@ -73,7 +73,7 @@ int main(int argc, char* argv[]) { TElemType e = 'F'; printf(" %c ֵΪ %c\n", e, Value(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Assign \n"); @@ -85,14 +85,14 @@ int main(int argc, char* argv[]) { printf(" T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Root \n"); { printf(" T ĸΪ %c\n", Root(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Parent \n"); @@ -100,7 +100,7 @@ int main(int argc, char* argv[]) { TElemType e = 'E'; printf(" %c ˫Ϊ%c \n", e, Parent(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ChildCount \n"); @@ -108,7 +108,7 @@ int main(int argc, char* argv[]) { TElemType e = 'X'; printf(" %c %d \n", e, ChildCount(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Child \n"); @@ -117,7 +117,7 @@ int main(int argc, char* argv[]) { int i = 2; printf(" %c ĵ %d ӽֵΪ%c \n", e, i, Child(T, e, i)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LeftSibling \n"); @@ -125,7 +125,7 @@ int main(int argc, char* argv[]) { TElemType e = 'H'; printf(" %c ֵΪ%c\n", e, LeftSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" RightSibling \n"); @@ -133,7 +133,7 @@ int main(int argc, char* argv[]) { TElemType e = 'H'; printf(" %c ֵΪ%c\n", e, RightSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" InsertChild \n"); @@ -153,7 +153,7 @@ int main(int argc, char* argv[]) { printf(" T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DeleteChild \n"); @@ -166,7 +166,7 @@ int main(int argc, char* argv[]) { printf(" T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearTreeTreeEmpty \n"); @@ -179,7 +179,7 @@ int main(int argc, char* argv[]) { printf(" պ"); TreeEmpty(T) ? printf("T Ϊգ\n") : printf("T Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/Dev-C++/CourseBook/0608_MFSet/MFSet-main.cpp b/Dev-C++/CourseBook/0608_MFSet/MFSet-main.cpp index 2a4ac2f..76d93e0 100644 --- a/Dev-C++/CourseBook/0608_MFSet/MFSet-main.cpp +++ b/Dev-C++/CourseBook/0608_MFSet/MFSet-main.cpp @@ -28,7 +28,7 @@ int main(int argc, char* argv[]) { printf(" ʼԪϵ R2 ...\n"); initial_relation(&R2, "TestData_R2.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PrintSet \n"); @@ -36,7 +36,7 @@ int main(int argc, char* argv[]) { printf(" S ...\n"); PrintSet(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); // һ @@ -57,7 +57,7 @@ int main(int argc, char* argv[]) { printf(" S ...\n"); PrintSet(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); // @@ -78,7 +78,7 @@ int main(int argc, char* argv[]) { // printf(" S ...\n"); // PrintSet(S); // } -// PressEnterToContinue(); +// PressEnterToContinue(debug); return OK; } diff --git a/Dev-C++/CourseBook/0609_HuffmanTree/HuffmanTree-main.cpp b/Dev-C++/CourseBook/0609_HuffmanTree/HuffmanTree-main.cpp index 58f8379..6768b84 100644 --- a/Dev-C++/CourseBook/0609_HuffmanTree/HuffmanTree-main.cpp +++ b/Dev-C++/CourseBook/0609_HuffmanTree/HuffmanTree-main.cpp @@ -12,7 +12,7 @@ int main(int argc, char* argv[]) { printf(" ʼҪdzʼȨֵϢ...\n"); InitEnvironment(&w, &n, "TestData_HT.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" HuffmanCodeing \n"); @@ -27,7 +27,7 @@ int main(int argc, char* argv[]) { printf(" ӡշ...\n"); PrintHuffmanCode(HT, HC); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" HuffmanDecoding \n"); @@ -40,7 +40,7 @@ int main(int argc, char* argv[]) { printf(" ӡȨֵϢ...\n"); PrintWeight(HC, weight, n); } - PressEnterToContinue(); + PressEnterToContinue(debug); return OK; } \ No newline at end of file diff --git a/Dev-C++/CourseBook/0610_PowerSet/PowerSet-main.cpp b/Dev-C++/CourseBook/0610_PowerSet/PowerSet-main.cpp index 1f53d6a..9ccd90d 100644 --- a/Dev-C++/CourseBook/0610_PowerSet/PowerSet-main.cpp +++ b/Dev-C++/CourseBook/0610_PowerSet/PowerSet-main.cpp @@ -9,7 +9,7 @@ int main(int argc, char* argv[]) { printf(" A ...\n"); CreatePowerSet(&A, "TestData_A.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PrintPowerSet \n"); @@ -17,7 +17,7 @@ int main(int argc, char* argv[]) { printf(" A = "); PrintPowerSet(A); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GetPowerSet \n"); @@ -32,7 +32,7 @@ int main(int argc, char* argv[]) { printf(" ȡݼеĸӼ...\n"); GetPowerSet(1, A, B); } - PressEnterToContinue(); + PressEnterToContinue(debug); return OK; } diff --git a/Dev-C++/CourseBook/0611_NQueens/NQueens-main.cpp b/Dev-C++/CourseBook/0611_NQueens/NQueens-main.cpp index 2108189..ea655b6 100644 --- a/Dev-C++/CourseBook/0611_NQueens/NQueens-main.cpp +++ b/Dev-C++/CourseBook/0611_NQueens/NQueens-main.cpp @@ -8,21 +8,21 @@ int main(int argc, char* argv[]) { printf("ʼһ %2d * %-2d Ŀ...\n", N, N); InitChessBoard(); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ShowChessBoard \n"); { printf("չʾǰеĻʺ󲼾...\n"); ShowChessBoard(); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Trial \n"); { printf(" %d ʺĸ...\n", N); Trial(1, N); } - PressEnterToContinue(); + PressEnterToContinue(debug); return OK; } diff --git a/Dev-C++/ExerciseBook/02.16-02.18/02.16-02.18.cpp b/Dev-C++/ExerciseBook/02.16-02.18/02.16-02.18.cpp index c9bb25a..036bec6 100644 --- a/Dev-C++/ExerciseBook/02.16-02.18/02.16-02.18.cpp +++ b/Dev-C++/ExerciseBook/02.16-02.18/02.16-02.18.cpp @@ -64,7 +64,7 @@ int main(int argc, char* argv[]) { Output(la); printf(" lb = "); Output(lb); - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" 2.16 ֤...\n"); printf(" laдӵ25뵽lbĵ6֮ǰ...\n"); @@ -73,7 +73,7 @@ int main(int argc, char* argv[]) { Output(la); printf(" lb = "); Output(lb); - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" 2.18 ֤...\n"); printf(" ɾlb65...\n"); diff --git a/Dev-C++/ExerciseBook/04.21/04.21.cpp b/Dev-C++/ExerciseBook/04.21/04.21.cpp index c9a2ab7..666b967 100644 --- a/Dev-C++/ExerciseBook/04.21/04.21.cpp +++ b/Dev-C++/ExerciseBook/04.21/04.21.cpp @@ -87,14 +87,14 @@ int main(int argc, char* argv[]) { printf(" S = "); StrPrint_4_21(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StrLength \n"); { i = StrLength_4_21(S); printf(" S ijΪ %d \n", i); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StrCopy \n"); { @@ -103,7 +103,7 @@ int main(int argc, char* argv[]) { printf(" T = "); StrPrint_4_21(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StrCompare \n"); { @@ -111,7 +111,7 @@ int main(int argc, char* argv[]) { i = StrCompare_4_21(S, T); i == 0 ? printf(" S==T\n") : (i < 0 ? printf(" ST\n")); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" SubString \n"); { @@ -122,7 +122,7 @@ int main(int argc, char* argv[]) { printf(" Sub = "); StrPrint_4_21(Sub); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Concat \n"); @@ -137,7 +137,7 @@ int main(int argc, char* argv[]) { printf(" Tmp = "); StrPrint_4_21(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/Dev-C++/ExerciseBook/06.56-06.58/06.56-06.58.cpp b/Dev-C++/ExerciseBook/06.56-06.58/06.56-06.58.cpp index 4cb0485..428528b 100644 --- a/Dev-C++/ExerciseBook/06.56-06.58/06.56-06.58.cpp +++ b/Dev-C++/ExerciseBook/06.56-06.58/06.56-06.58.cpp @@ -72,7 +72,7 @@ int main(int argc, char* argv[]) { printf(" ԷAlgo_6_56У"); PreTraverse(Thr); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" 6.57 ֤...\n"); @@ -92,7 +92,7 @@ int main(int argc, char* argv[]) { printf(" ԷAlgo_6_57ĺУ"); PosTraverse(Thr); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" 6.58 ֤...\n"); @@ -134,7 +134,7 @@ int main(int argc, char* argv[]) { printf(" ɺȫΪ"); InOrderTraverse_Thr(Thr, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); } diff --git a/Dev-C++/Status/Status.a b/Dev-C++/Status/Status.a index ca8c6eb47c189b107ff359f4d60e240973efd04d..777e3d9d4d464c808f9a322aba4825c910a624f0 100644 GIT binary patch delta 1757 zcmZ8iYfKzf6h3EWU|$0)Y(XdjQ>Z*jX<6ji{y^GY-tD%#AO%raV1b2wby>6_Hc(B} z#u!|$CXL}oNi~Xzp=OM2ts(NqsDG@Q{xcC1Us1ykjR{Rm^xV1Y`nbux_dDl&=W$;% zzkY{5eUC5hKhf%JZf$L9Y0W;Er3Tp2?>00EH2Ny5zkwjIko@ zLOb*0GG1rjV3{?n0DPMXP#tDgsWfAk*k@UtRF%=L0$gRoQki9Q1RzS%yX+E4OEN&| z48RuKkoxcn`<=Kq=Kwy|56FuApmzC`z598-GWhdO_vP&$IePk{9TJZ27qToQ7#d^v z*?Nm_0~^iUj~aU-^AIJRz~?pUg@pOMNBtn-Ap6|3gnN3w`DHAY zPDG=jfIk9Cc`gE&y#fD}%b)NAI@m9ky5&4_vP{QF^3yRg|ARt7+kfJnHCAzL;fHIyE-<~$Wh4HOz!fJ-(BvP2!;bhD>O<6+ZodF z)+r|7JF(7*QgRkRDK#ro(Zz{S0J0Y5gR%Z#B;X6g{BeIG8VB59Bk|I6{G@mr6%!RW zNcYS*f{oM>*xpQWdQ%)@W8V@B4*}$)R%7O?v81@HT-~W{1lfGdcHGwEXfKlZu^px^ zcEp^DC8j-@Ik7jhOv{+1e>U`kT$YU{Be-wC)#DlC z!7Z|)$lInI8YMfs`^cAc-hXqvlunTB3fbj686EmZqt#fjFI5r6>F{=Gz|Bg&t~~aR zrBBXK(CQoL7#Q^NQZZ-1JLuM&fcDOgexF;b2h8>KaYdfn>-BiKqQLX8+uPai8Pe(+ zC>T7>4-ppht(iwDmiVyHk?KXkV#GYwH20qAZFBz2?F;Mdx4COt4@uZU13>j*iPg=H;md4pRF_9uiy zgf9pQUM?N1uvQW(H+X%7stq(jNW_n&t*@nZn}me#AA~9lkIY%xgBk-m2#Iw3X&*9l zC4_1XR6~egECuQbRT$_PA>kV&Bz&JuBmP80F*}4R+41n}eVvrpM7{`5rqM82g)W&! zH_|AN9*VFwr_mH48>@{};0p6ZZaer#5kX5``d2Cb8Y_tw;~r~^cA>&9MOQJ*a$^;^ zOD`aw^~M@-lU*cviLJ+mbH&plH)<3LBz7-$%`_88OwRh_EP1|!eR%!~{e+Tb>_U9$ EFWHnjZ2$lO delta 1804 zcmZuydrX^E6hEimSNhiQ4QL6^ne0UwRAfTi4F@g8YG5 zqReE?or#ZS4`29)QOp;O(`kY+8ly2z|Izr5#!bzZn8gGWW0QIAcS}QzH@Wxx&bhzy zxc7Xwz4a^pc@xjwv#+De)zZ?^-syC@oP2CwoldulHuN!J1pt}m`u54LB%5(Db+&%l zuLjkH`KCm3hVO3s|Hy8atG&J5>1^q8cXnkWhtAk2D8RKCz#bjR(4>YRS9P3OD7VJ| z;FuM$i=9@?W2G zeJh{3*iz0_w%0U-K6cjBRPCkw{9IgKrddju%QVfMgooIVrYA719W$Rt#q0|QLmqx@ zXrl)1VE0-}$|Yi2rsl}Rks(D&A{h&+oHJmpShly(0Su`=WePCgqEikiCuaZ)cIq30 z$~<5p$5QJ3WhD;iD9|^eN;FJbiO?pLS->3v&nRk)5|#;VObL=wzCqPWsr6;$WMUys z*(=4a5&|%qW$K2}Y-gL+n&oH4M_OEi$?*JqPh1Tr1BvcLT#dvR!i(?+ZyJqJApkF| zP{Fx>Wy}K^vl0qVE=&WiiWE@*+i);KIWLZnv~m>H?~}8Kvyr~%_oPN*-Z1e>^%FvF zfQ)<`76OzA;3dv9q-N;VnB`DnVKN#9`}}NV?x9FL><`ZclR-6+1YBcZ=T=tpX7Mp5 z1eL5eV=dE++&5W);xNCFsg!w?pV%FxxPsVwXo`cGGrmHkC3X;twNT#i3Wtp5aqp4t z@orzh({tGG1j%Y-*Bgp3N4wcjY(c5c4ggnfW|@ zXwhEsJZD3z=JpRE=4vZ}DG3$r*6?pqRUVr3`2K*$`|voAZ;@nK+A!H@HQ3pm(eEnr zvm76#5G1=y`%-~~h1$cl%1iwv{;LSb4fpLrCury^yD zdF6ck;vXD7wb|#<4MRq;;!oR~#JdFSV diff --git a/Dev-C++/Status/Status.cpp b/Dev-C++/Status/Status.cpp index 9e0c0ba..e86c209 100644 --- a/Dev-C++/Status/Status.cpp +++ b/Dev-C++/Status/Status.cpp @@ -2,6 +2,11 @@ #include #include // ṩva_listva_startva_argva_end #include // ṩisprintԭ +#include "Status.h" + +/* ȫֱ*/ +Boolean debug = FALSE; // ǷʹdebugģʽʱΪTRUEʱΪFALSE(޸debugֵһҪɾ̬) + /* * Զ¼뺯ڴļfpжȡʽ @@ -135,20 +140,17 @@ int ReadData(FILE* fp, char* format, ...) { } // »سԼ -void PressEnterToContinue() { - int debug = 1; - +void PressEnterToContinue(Boolean debug) { fflush(stdin); - printf("\nPress Enter to Continue..."); - - // ڲԽ׶ʱdebug=1ԶӻУڲ + // ڲԽ׶ʱdebug=TRUEֶ뻻УԱóͣ۲ÿһ if(debug) { - printf("\n"); - - // ʱdebug=0ֶ뻻Уóͣ۲ÿһ - } else { + printf("\nPress Enter to Continue..."); getchar(); + + // ʱdebug=FALSEԶӻУֱӳ + } else { + printf("\n"); } fflush(stdin); diff --git a/Dev-C++/Status/Status.h b/Dev-C++/Status/Status.h index 82c912f..38c4cda 100644 --- a/Dev-C++/Status/Status.h +++ b/Dev-C++/Status/Status.h @@ -33,12 +33,14 @@ typedef int Status; /* */ typedef int Boolean; +/* ȫֱ*/ +extern Boolean debug; // Ƿʹdebugģʽ // ȡ int ReadData(FILE* fp, char* format, ...); // »سԼ -void PressEnterToContinue(); +void PressEnterToContinue(Boolean debug); // ͣһʱ䣬timeʱ void Wait(long time); diff --git a/VisualC++/CourseBook/0201_SqList/SqList-main.c b/VisualC++/CourseBook/0201_SqList/SqList-main.c index 340e16e..44861b7 100644 --- a/VisualC++/CourseBook/0201_SqList/SqList-main.c +++ b/VisualC++/CourseBook/0201_SqList/SqList-main.c @@ -23,7 +23,7 @@ int main(int argc, char** argv) { printf(" ʼ˳ L ...\n"); InitList(&L); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListEmpty \n"); @@ -34,7 +34,7 @@ int main(int argc, char** argv) { printf(" L Ϊգ\n"); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListInsert \n"); @@ -44,7 +44,7 @@ int main(int argc, char** argv) { ListInsert(&L, i, 2 * i); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListTraverse \n"); @@ -52,7 +52,7 @@ int main(int argc, char** argv) { printf(" L еԪΪL = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListLength \n"); @@ -60,7 +60,7 @@ int main(int argc, char** argv) { i = ListLength(L); printf(" L ijΪ %d \n", i); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListDelete \n"); @@ -79,7 +79,7 @@ int main(int argc, char** argv) { printf(" ɾԪأL = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GetElem \n"); @@ -87,7 +87,7 @@ int main(int argc, char** argv) { GetElem(L, 4, &e); printf(" L е 4 λõԪΪ \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LocateElem \n"); @@ -95,7 +95,7 @@ int main(int argc, char** argv) { i = LocateElem(L, 7, CmpGreater); printf(" L еһԪֵ \"7\" Ԫ \"%d\" \n", L.elem[i - 1]); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PriorElem \n"); @@ -108,7 +108,7 @@ int main(int argc, char** argv) { printf(" Ԫ \"%d\" ǰڣ\n", cur_e); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" NextElem \n"); @@ -121,7 +121,7 @@ int main(int argc, char** argv) { printf(" Ԫ \"%d\" ĺ̲ڣ\n", cur_e); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearList \n"); @@ -142,7 +142,7 @@ int main(int argc, char** argv) { printf(" L Ϊգ\n"); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DestroyList \n"); @@ -163,7 +163,7 @@ int main(int argc, char** argv) { printf(" L ڣ\n"); } } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; diff --git a/VisualC++/CourseBook/0202_Union/Union.h b/VisualC++/CourseBook/0202_Union/Union.h index cef4815..abf36de 100644 --- a/VisualC++/CourseBook/0202_Union/Union.h +++ b/VisualC++/CourseBook/0202_Union/Union.h @@ -11,7 +11,6 @@ #include "Status.h" //**01 **// #include "SqList.h" //**02 Ա**// - /* * 㷨2.1 * diff --git a/VisualC++/CourseBook/0203_MergeSqList/MergeSqList.c b/VisualC++/CourseBook/0203_MergeSqList/MergeSqList.c index 4df7d41..22d973c 100644 --- a/VisualC++/CourseBook/0203_MergeSqList/MergeSqList.c +++ b/VisualC++/CourseBook/0203_MergeSqList/MergeSqList.c @@ -6,7 +6,6 @@ #include "MergeSqList.h" //**02 Ա**// - /* * 㷨2.2 * diff --git a/VisualC++/CourseBook/0203_MergeSqList/MergeSqList.h b/VisualC++/CourseBook/0203_MergeSqList/MergeSqList.h index 12704b0..341e527 100644 --- a/VisualC++/CourseBook/0203_MergeSqList/MergeSqList.h +++ b/VisualC++/CourseBook/0203_MergeSqList/MergeSqList.h @@ -11,7 +11,6 @@ #include #include "SqList.h" //**02 Ա**// - /* * 㷨2.2 * diff --git a/VisualC++/CourseBook/0204_LinkList/LinkList-main.c b/VisualC++/CourseBook/0204_LinkList/LinkList-main.c index f9eddbb..6adf62e 100644 --- a/VisualC++/CourseBook/0204_LinkList/LinkList-main.c +++ b/VisualC++/CourseBook/0204_LinkList/LinkList-main.c @@ -23,14 +23,14 @@ int main(int argc, char** argv) { printf(" ʼ L ...\n"); InitList(&L); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListEmpty \n"); { ListEmpty(L) ? printf(" L Ϊգ\n") : printf(" L Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListInsert \n"); @@ -40,7 +40,7 @@ int main(int argc, char** argv) { ListInsert(L, i, 2 * i); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListTraverse \n"); @@ -48,14 +48,14 @@ int main(int argc, char** argv) { printf(" L еԪΪL = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListLength \n"); { printf(" L ijΪ %d \n", ListLength(L)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListDelete \n"); @@ -74,7 +74,7 @@ int main(int argc, char** argv) { printf(" ɾԪأL = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GetElem \n"); @@ -82,7 +82,7 @@ int main(int argc, char** argv) { GetElem(L, 4, &e); printf(" L е 4 λõԪΪ \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LocateElem \n"); @@ -91,7 +91,7 @@ int main(int argc, char** argv) { GetElem(L, i, &e); printf(" L еһԪֵ \"7\" Ԫ \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PriorElem \n"); @@ -104,7 +104,7 @@ int main(int argc, char** argv) { printf(" Ԫ \"%d\" ǰڣ\n", cur_e); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" NextElem \n"); @@ -117,7 +117,7 @@ int main(int argc, char** argv) { printf(" Ԫ \"%d\" ĺ̲ڣ\n", cur_e); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearList \n"); @@ -130,7 +130,7 @@ int main(int argc, char** argv) { printf(" L "); ListEmpty(L) ? printf(" L Ϊգ\n") : printf(" L Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DestroyList \n"); @@ -143,7 +143,7 @@ int main(int argc, char** argv) { printf(" L "); L ? printf(" L ڣ\n") : printf(" L ڣ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CreateList_Head \n"); @@ -153,7 +153,7 @@ int main(int argc, char** argv) { printf(" ͷ巨 L = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CreateList_Tail \n"); @@ -163,7 +163,7 @@ int main(int argc, char** argv) { printf(" β巨 L = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/VisualC++/CourseBook/0206_SLinkList/SLinkList-main.c b/VisualC++/CourseBook/0206_SLinkList/SLinkList-main.c index c9fb486..9aea05b 100644 --- a/VisualC++/CourseBook/0206_SLinkList/SLinkList-main.c +++ b/VisualC++/CourseBook/0206_SLinkList/SLinkList-main.c @@ -25,14 +25,14 @@ int main(int argc, char** argv) { printf(" ʼ S ...\n"); InitList(space, &S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListEmpty \n"); { ListEmpty(space, S) ? printf(" S Ϊգ\n") : printf(" S Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListInsert \n"); @@ -42,7 +42,7 @@ int main(int argc, char** argv) { ListInsert(space, S, i, 2 * i); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListTraverse \n"); @@ -50,14 +50,14 @@ int main(int argc, char** argv) { printf(" S еԪΪS = "); ListTraverse(space, S, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListLength \n"); { printf(" S ijΪ %d \n", ListLength(space, S)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListDelete \n"); @@ -76,7 +76,7 @@ int main(int argc, char** argv) { printf(" ɾԪأS = "); ListTraverse(space, S, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GetElem \n"); @@ -84,7 +84,7 @@ int main(int argc, char** argv) { GetElem(space, S, 4, &e); printf(" S е 4 λõԪΪ \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LocateElem \n"); @@ -93,7 +93,7 @@ int main(int argc, char** argv) { GetElem(space, S, i, &e); printf(" S еһԪֵ \"7\" Ԫ \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PriorElem \n"); @@ -106,7 +106,7 @@ int main(int argc, char** argv) { printf(" Ԫ \"%d\" ǰڣ\n", cur_e); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" NextElem \n"); @@ -119,7 +119,7 @@ int main(int argc, char** argv) { printf(" Ԫ \"%d\" ĺ̲ڣ\n", cur_e); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearList \n"); @@ -132,7 +132,7 @@ int main(int argc, char** argv) { printf(" S "); ListEmpty(space, S) ? printf(" S Ϊգ\n") : printf(" S Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DestroyList \n"); @@ -145,7 +145,7 @@ int main(int argc, char** argv) { printf(" S "); S!=0 ? printf(" S ڣ\n") : printf(" S ڣ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/VisualC++/CourseBook/0208_DuLinkList/DuLinkList-main.c b/VisualC++/CourseBook/0208_DuLinkList/DuLinkList-main.c index 90cbb4f..ad44095 100644 --- a/VisualC++/CourseBook/0208_DuLinkList/DuLinkList-main.c +++ b/VisualC++/CourseBook/0208_DuLinkList/DuLinkList-main.c @@ -23,14 +23,14 @@ int main(int argc, char** argv) { printf(" ʼ˫ѭ L ...\n"); InitList(&L); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListEmpty \n"); { ListEmpty(L) ? printf(" L Ϊգ\n") : printf(" L Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListInsert \n"); @@ -40,7 +40,7 @@ int main(int argc, char** argv) { ListInsert(L, i, 2 * i); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListTraverse \n"); @@ -48,14 +48,14 @@ int main(int argc, char** argv) { printf(" L еԪΪL = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListLength \n"); { printf(" L ijΪ %d \n", ListLength(L)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListDelete \n"); @@ -74,7 +74,7 @@ int main(int argc, char** argv) { printf(" ɾԪأL = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GetElem \n"); @@ -82,7 +82,7 @@ int main(int argc, char** argv) { GetElem(L, 4, &e); printf(" L е 4 λõԪΪ \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LocateElem \n"); @@ -91,7 +91,7 @@ int main(int argc, char** argv) { GetElem(L, i, &e); printf(" L еһԪֵ \"7\" Ԫ \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PriorElem \n"); @@ -104,7 +104,7 @@ int main(int argc, char** argv) { printf(" Ԫ \"%d\" ǰڣ\n", cur_e); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" NextElem \n"); @@ -117,7 +117,7 @@ int main(int argc, char** argv) { printf(" Ԫ \"%d\" ĺ̲ڣ\n", cur_e); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearList \n"); @@ -130,7 +130,7 @@ int main(int argc, char** argv) { printf(" L "); ListEmpty(L) ? printf(" L Ϊգ\n") : printf(" L Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DestroyList \n"); @@ -143,7 +143,7 @@ int main(int argc, char** argv) { printf(" L "); L ? printf(" L ڣ\n") : printf(" L ڣ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/VisualC++/CourseBook/0209_ELinkList/ELinkList-main.c b/VisualC++/CourseBook/0209_ELinkList/ELinkList-main.c index 7d37082..37eb319 100644 --- a/VisualC++/CourseBook/0209_ELinkList/ELinkList-main.c +++ b/VisualC++/CourseBook/0209_ELinkList/ELinkList-main.c @@ -24,14 +24,14 @@ int main(int argc, char** argv) { printf(" ʼչ L ...\n"); InitList(&L); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListEmpty \n"); { ListEmpty(L) ? printf(" L Ϊգ\n") : printf(" L Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListInsert \n"); @@ -41,7 +41,7 @@ int main(int argc, char** argv) { ListInsert(&L, i, 2 * i); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListTraverse \n"); @@ -49,14 +49,14 @@ int main(int argc, char** argv) { printf(" L еԪΪL = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListLength \n"); { printf(" L ijΪ %d \n", ListLength(L)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ListDelete \n"); @@ -75,7 +75,7 @@ int main(int argc, char** argv) { printf(" ɾԪأL = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LocateElem \n"); @@ -83,7 +83,7 @@ int main(int argc, char** argv) { r = LocateElem(L, 7, CmpGreater); printf(" L еһԪֵ \"7\" Ԫ \"%d\" \n", r->data); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PriorElem \n"); @@ -96,7 +96,7 @@ int main(int argc, char** argv) { printf(" Ԫ \"%d\" ǰڣ\n", r->data); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" NextElem \n"); @@ -109,7 +109,7 @@ int main(int argc, char** argv) { printf(" Ԫ \"%d\" ĺ̲ڣ\n", r->data); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" MakeNode \n"); @@ -121,7 +121,7 @@ int main(int argc, char** argv) { printf(" \"300\" ...\n"); MakeNode(&s, 300); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" InsFirst \n"); @@ -131,7 +131,7 @@ int main(int argc, char** argv) { printf(" L еԪΪL = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DelFirst \n"); @@ -142,7 +142,7 @@ int main(int argc, char** argv) { printf(" L еԪΪL = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" InsBefore \n"); @@ -154,7 +154,7 @@ int main(int argc, char** argv) { printf(" L еԪΪL = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" InsAfter \n"); @@ -166,7 +166,7 @@ int main(int argc, char** argv) { printf(" L еԪΪL = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Append \n"); @@ -179,7 +179,7 @@ int main(int argc, char** argv) { printf(" L еԪΪL = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Remove \n"); @@ -190,7 +190,7 @@ int main(int argc, char** argv) { printf(" L еԪΪL = "); ListTraverse(L, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearList \n"); @@ -203,7 +203,7 @@ int main(int argc, char** argv) { printf(" L "); ListEmpty(L) ? printf(" L Ϊգ\n") : printf(" L Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DestroyList \n"); @@ -217,7 +217,7 @@ int main(int argc, char** argv) { L.head != NULL && L.tail != NULL ? printf(" L ڣ\n") : printf(" L ڣ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/VisualC++/CourseBook/0211_Polynomial/Polynomial-main.c b/VisualC++/CourseBook/0211_Polynomial/Polynomial-main.c index dd757aa..7d8a5f7 100644 --- a/VisualC++/CourseBook/0211_Polynomial/Polynomial-main.c +++ b/VisualC++/CourseBook/0211_Polynomial/Polynomial-main.c @@ -15,7 +15,7 @@ int main(int argc, char **argv) { printf(" ΪʾΪ %d ĶʽPb...\n", n); CreatPolyn(&Pb, n, "TestData_Pb.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PrintPolyn \n"); @@ -26,14 +26,14 @@ int main(int argc, char **argv) { printf(" һԪʽ Pb = "); PrintPolyn(Pb); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PolynLength \n"); { printf(" La Ϊ %d Lb Ϊ %d\n", PolynLength(Pa), PolynLength(Pb)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" AddPolyn \n"); @@ -46,7 +46,7 @@ int main(int argc, char **argv) { printf(" Pa = Pa + Pb = "); PrintPolyn(Pa); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" SubtractPolyn \n"); @@ -59,7 +59,7 @@ int main(int argc, char **argv) { printf(" Pa = Pa - Pb = "); PrintPolyn(Pa); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" MultiplyPolyn \n"); @@ -72,7 +72,7 @@ int main(int argc, char **argv) { printf(" Pa = Pa * Pb = "); PrintPolyn(Pa); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/VisualC++/CourseBook/0301_SqStack/SqStack-main.c b/VisualC++/CourseBook/0301_SqStack/SqStack-main.c index ae7df91..00df95e 100644 --- a/VisualC++/CourseBook/0301_SqStack/SqStack-main.c +++ b/VisualC++/CourseBook/0301_SqStack/SqStack-main.c @@ -2,7 +2,10 @@ #include "SqStack.h" //**03 ջͶ**// // ԺӡԪ -void PrintElem(SElemType e); +void PrintElem(SElemType e) { + printf("%d ", e); +} + int main(int argc, char** argv) { SqStack S; @@ -14,13 +17,13 @@ int main(int argc, char** argv) { printf(" ʼ˳ջ S ...\n"); InitStack(&S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StackEmpty \n"); { StackEmpty(S) ? printf(" S Ϊգ\n") : printf(" S Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Push \n"); { @@ -29,21 +32,21 @@ int main(int argc, char** argv) { printf(" \"%2d\" ѹջ S ...\n", 2 * i); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StackTraverse \n"); { printf(" S еԪΪS = "); StackTraverse(S, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StackLength \n"); { i = StackLength(S); printf(" S ijΪ %d \n", i); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Pop \n"); { @@ -52,14 +55,14 @@ int main(int argc, char** argv) { printf(" S еԪΪS = "); StackTraverse(S, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GetTop \n"); { GetTop(S, &e); printf(" ջԪصֵΪ \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearStack \n"); { @@ -71,7 +74,7 @@ int main(int argc, char** argv) { printf(" S "); StackEmpty(S) ? printf(" S Ϊգ\n") : printf(" S Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DestroyStack \n"); { @@ -83,12 +86,7 @@ int main(int argc, char** argv) { printf(" S "); S.base != NULL && S.top != NULL ? printf(" S ڣ\n") : printf(" S ڣ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } - -// ԺӡԪ -void PrintElem(SElemType e) { - printf("%d ", e); -} diff --git a/VisualC++/CourseBook/0306_Hanoi/Hanoi.c b/VisualC++/CourseBook/0306_Hanoi/Hanoi.c index c772b44..84b9b1a 100644 --- a/VisualC++/CourseBook/0306_Hanoi/Hanoi.c +++ b/VisualC++/CourseBook/0306_Hanoi/Hanoi.c @@ -6,6 +6,11 @@ #include "Hanoi.h" //**03 ջͶ**// +/* ȫֱ */ +Tower T; // ŵ +int gStep; // ͳƶ + + /* * 㷨3.5 * diff --git a/VisualC++/CourseBook/0306_Hanoi/Hanoi.h b/VisualC++/CourseBook/0306_Hanoi/Hanoi.h index 2f3fa97..94d6018 100644 --- a/VisualC++/CourseBook/0306_Hanoi/Hanoi.h +++ b/VisualC++/CourseBook/0306_Hanoi/Hanoi.h @@ -19,12 +19,6 @@ typedef struct { int high[3]; // ĸ߶ȣе } Tower; -// ŵ -Tower T; - -// ͳƶ -int gStep; - /* * 㷨3.5 diff --git a/VisualC++/CourseBook/0307_LinkQueue/LinkQueue-main.c b/VisualC++/CourseBook/0307_LinkQueue/LinkQueue-main.c index 1e71482..f1e3db6 100644 --- a/VisualC++/CourseBook/0307_LinkQueue/LinkQueue-main.c +++ b/VisualC++/CourseBook/0307_LinkQueue/LinkQueue-main.c @@ -2,7 +2,10 @@ #include "LinkQueue.h" //**03 ջͶ**// // Ժӡ -void PrintElem(QElemType e); +void PrintElem(QElemType e) { + printf("%d ", e); +} + int main(int argc, char** argv) { LinkQueue Q; @@ -14,13 +17,13 @@ int main(int argc, char** argv) { printf(" ʼ Q ...\n"); InitQueue(&Q); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" QueueEmpty \n"); { QueueEmpty(Q) ? printf(" Q Ϊգ\n") : printf(" Q Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" EnQueue \n"); { @@ -29,21 +32,21 @@ int main(int argc, char** argv) { printf(" Ԫ \"%2d\" ...\n", 2 * i); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" QueueTraverse \n"); { printf(" Q еԪΪQ = "); QueueTraverse(Q, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" QueueLength \n"); { i = QueueLength(Q); printf(" Q ijΪ %d \n", i); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DeQueue \n"); { @@ -52,14 +55,14 @@ int main(int argc, char** argv) { printf(" Q еԪΪQ = "); QueueTraverse(Q, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GetHead \n"); { GetHead(Q, &e); printf(" ͷԪصֵΪ \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearQueue \n"); { @@ -71,7 +74,7 @@ int main(int argc, char** argv) { printf(" Q "); QueueEmpty(Q) ? printf(" Q Ϊգ\n") : printf(" Q Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DestroyQueue \n"); { @@ -83,12 +86,7 @@ int main(int argc, char** argv) { printf(" Q "); Q.front != NULL && Q.rear != NULL ? printf(" Q ڣ\n") : printf(" Q ڣ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } - -// Ժӡ -void PrintElem(QElemType e) { - printf("%d ", e); -} diff --git a/VisualC++/CourseBook/0308_SqQueue/SqQueue-main.c b/VisualC++/CourseBook/0308_SqQueue/SqQueue-main.c index 44cb59f..75f2fa6 100644 --- a/VisualC++/CourseBook/0308_SqQueue/SqQueue-main.c +++ b/VisualC++/CourseBook/0308_SqQueue/SqQueue-main.c @@ -2,7 +2,10 @@ #include "SqQueue.h" //**03 ջͶ**// // Ժӡ -void PrintElem(QElemType e); +void PrintElem(QElemType e) { + printf("%d ", e); +} + int main(int argc, char** argv) { SqQueue Q; @@ -14,13 +17,13 @@ int main(int argc, char** argv) { printf(" ʼѭ˳ Q ...\n"); InitQueue(&Q); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" QueueEmpty \n"); { QueueEmpty(Q) ? printf(" Q Ϊգ\n") : printf(" Q Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" EnQueue \n"); { @@ -29,21 +32,21 @@ int main(int argc, char** argv) { printf(" Ԫ \"%2d\" Q...\n", 2 * i); } } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" QueueTraverse \n"); { printf(" Q еԪΪQ = "); QueueTraverse(Q, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" QueueLength \n"); { i = QueueLength(Q); printf(" Q ijΪ %d \n", i); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DeQueue \n"); { @@ -52,14 +55,14 @@ int main(int argc, char** argv) { printf(" Q еԪΪQ = "); QueueTraverse(Q, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GetHead \n"); { GetHead(Q, &e); printf(" ͷԪصֵΪ \"%d\" \n", e); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearQueue \n"); { @@ -71,7 +74,7 @@ int main(int argc, char** argv) { printf(" Q "); QueueEmpty(Q) ? printf(" Q Ϊգ\n") : printf(" Q Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DestroyQueue \n"); { @@ -83,12 +86,7 @@ int main(int argc, char** argv) { printf(" Q "); Q.base != NULL ? printf(" Q ڣ\n") : printf(" Q ڣ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } - -// Ժӡ -void PrintElem(QElemType e) { - printf("%d ", e); -} diff --git a/VisualC++/CourseBook/0309_BankQueuing/BankQueuing.c b/VisualC++/CourseBook/0309_BankQueuing/BankQueuing.c index 143402d..c86cb12 100644 --- a/VisualC++/CourseBook/0309_BankQueuing/BankQueuing.c +++ b/VisualC++/CourseBook/0309_BankQueuing/BankQueuing.c @@ -9,6 +9,18 @@ #include "BankQueuing.h" //**03 ջͶ**// +/* ȫֱǰ涼gǣ */ +int gTotalTime; // ۼƿͻ +int gCustomerNum; // ۼƿͻʱ + +int gCloseTime; // ʱ,ÿӪҵ8Сʱ480 + +EventList gEv; // ¼洢д¼ +Event gEn; // ǰڴ¼ + +LinkQueue gQ[N+1]; // 4ͻ,0ŵԪ + + /* * 㷨3.6 * @@ -165,7 +177,7 @@ void CustomerArrived() { // ǰͻ̶Ŷ EnQueue(&gQ[i], customer); - printf("%3dͻ %d Ŷ...\n", customer.Count, i); + printf("%3dͻ̨ %d Ŷ...\n", customer.Count, i); Show(); /* @@ -189,7 +201,7 @@ void CustomerDeparture() { // iеĶͷͻҵ񲢳 DeQueue(&gQ[i], &customer); - printf("%3dͻӶ %d 뿪...\n", customer.Count, i); + printf("%3dͻӹ̨ %d 뿪...\n", customer.Count, i); Show(); // ۼƿͻʱ @@ -308,16 +320,16 @@ void Show() { for(p = gQ[i].front; p; p = p->next) { if(p == gQ[i].front) { if(i == 1) { - printf("̨١"); + printf("̨š"); } if(i == 2) { - printf("̨ڡ"); + printf("̨ơ"); } if(i == 3) { - printf("̨ۡ"); + printf("̨ǡ"); } if(i == 4) { - printf("̨ܡ"); + printf("̨ȡ"); } } else { printf("%03d", p->data.Count); diff --git a/VisualC++/CourseBook/0309_BankQueuing/BankQueuing.h b/VisualC++/CourseBook/0309_BankQueuing/BankQueuing.h index 8d27560..05ebbcd 100644 --- a/VisualC++/CourseBook/0309_BankQueuing/BankQueuing.h +++ b/VisualC++/CourseBook/0309_BankQueuing/BankQueuing.h @@ -23,17 +23,6 @@ /* Ͷ */ typedef LinkList EventList; //¼ͣΪ -/* ȫֱǰ涼gǣ */ -int gTotalTime; // ۼƿͻ -int gCustomerNum; // ۼƿͻʱ - -int gCloseTime; // ʱ,ÿӪҵ8Сʱ480 - -EventList gEv; // ¼洢д¼ -Event gEn; // ǰڴ¼ - -LinkQueue gQ[N+1]; // 4ͻ,0ŵԪ - /* * 㷨3.6 diff --git a/VisualC++/CourseBook/0401_SString/SString-main.c b/VisualC++/CourseBook/0401_SString/SString-main.c index e51a760..6fb2133 100644 --- a/VisualC++/CourseBook/0401_SString/SString-main.c +++ b/VisualC++/CourseBook/0401_SString/SString-main.c @@ -2,7 +2,16 @@ #include "SString.h" //**04 **// // Ժӡַ -void PrintElem(SString S); +void PrintElem(SString S) { + int i; + + for(i = 1; i <= S[0]; i++) { + printf("%c", S[i]); + } + + printf("\n"); +} + int main(int argc, char** argv) { char* chars = "01234567899876543210"; @@ -16,20 +25,20 @@ int main(int argc, char** argv) { printf(" S = "); PrintElem(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StrEmpty \n"); { StrEmpty(S) ? printf(" S Ϊգ\n") : printf(" S Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StrLength \n"); { i = StrLength(S); printf(" S ijΪ %d \n", i); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StrCopy \n"); { @@ -38,7 +47,7 @@ int main(int argc, char** argv) { printf(" T = "); PrintElem(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StrCompare \n"); { @@ -46,7 +55,7 @@ int main(int argc, char** argv) { i = StrCompare(S, T); i == 0 ? printf(" S==T\n") : (i < 0 ? printf(" ST\n")); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StrInsert \n"); { @@ -56,7 +65,7 @@ int main(int argc, char** argv) { printf(" S = "); PrintElem(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Index \n"); { @@ -65,7 +74,7 @@ int main(int argc, char** argv) { i = Index_1(S, T, 1); printf(" \"*****\" S еһγֵλΪ %d \n", i); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" SubString \n"); { @@ -74,7 +83,7 @@ int main(int argc, char** argv) { printf(" Sub = "); PrintElem(sub); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Replace \n"); { @@ -85,7 +94,7 @@ int main(int argc, char** argv) { printf(" S = "); PrintElem(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StrDelete \n"); { @@ -94,7 +103,7 @@ int main(int argc, char** argv) { printf(" S = "); PrintElem(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearString \n"); { @@ -106,7 +115,7 @@ int main(int argc, char** argv) { printf(" S "); StrEmpty(S) ? printf(" S Ϊգ\n") : printf(" S Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Concat \n"); { @@ -120,18 +129,7 @@ int main(int argc, char** argv) { printf(" Tmp = "); PrintElem(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } - -// Ժӡַ -void PrintElem(SString S) { - int i; - - for(i = 1; i <= S[0]; i++) { - printf("%c", S[i]); - } - - printf("\n"); -} diff --git a/VisualC++/CourseBook/0402_HString/HString-main.c b/VisualC++/CourseBook/0402_HString/HString-main.c index 7e84ab0..77453b3 100644 --- a/VisualC++/CourseBook/0402_HString/HString-main.c +++ b/VisualC++/CourseBook/0402_HString/HString-main.c @@ -2,7 +2,16 @@ #include "HString.h" //**04 **// // Ժӡַ -void PrintElem(HString S); +void PrintElem(HString S) { + int i; + + for(i = 0; i <= S.length-1; i++) { + printf("%c", S.ch[i]); + } + + printf("\n"); +} + int main(int argc, char** argv) { char* chars = "01234567899876543210"; @@ -16,20 +25,20 @@ int main(int argc, char** argv) { printf(" S = "); PrintElem(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StrEmpty \n"); { StrEmpty(S) ? printf(" S Ϊգ\n") : printf(" S Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StrLength \n"); { i = StrLength(S); printf(" S ijΪ %d \n", i); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StrCopy \n"); { @@ -38,7 +47,7 @@ int main(int argc, char** argv) { printf(" T = "); PrintElem(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StrCompare \n"); { @@ -46,7 +55,7 @@ int main(int argc, char** argv) { i = StrCompare(S, T); i == 0 ? printf(" S==T\n") : (i < 0 ? printf(" ST\n")); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StrInsert \n"); { @@ -56,7 +65,7 @@ int main(int argc, char** argv) { printf(" S = "); PrintElem(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Index \n"); { @@ -65,7 +74,7 @@ int main(int argc, char** argv) { i = Index(S, T, 1); printf(" \"*****\" S еһγֵλΪ %d \n", i); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" SubString \n"); { @@ -74,7 +83,7 @@ int main(int argc, char** argv) { printf(" Sub = "); PrintElem(sub); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Replace \n"); { @@ -85,7 +94,7 @@ int main(int argc, char** argv) { printf(" S = "); PrintElem(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" StrDelete \n"); { @@ -94,7 +103,7 @@ int main(int argc, char** argv) { printf(" S = "); PrintElem(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearString \n"); { @@ -106,7 +115,7 @@ int main(int argc, char** argv) { printf(" S "); StrEmpty(S) ? printf(" S Ϊգ\n") : printf(" S Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Concat \n"); { @@ -120,18 +129,7 @@ int main(int argc, char** argv) { printf(" Tmp = "); PrintElem(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } - -// Ժӡַ -void PrintElem(HString S) { - int i; - - for(i = 0; i <= S.length-1; i++) { - printf("%c", S.ch[i]); - } - - printf("\n"); -} diff --git a/VisualC++/CourseBook/0403_LString/LString-main.c b/VisualC++/CourseBook/0403_LString/LString-main.c index f9e3faa..660e474 100644 --- a/VisualC++/CourseBook/0403_LString/LString-main.c +++ b/VisualC++/CourseBook/0403_LString/LString-main.c @@ -1,129 +1,5 @@ #include "LString.h" //**04 **// -// Ժӡַ -void PrintElem(LString S); - -int main(int argc, char** argv) { - char* chars = "01234567899876543210"; - LString S, T, sub, V; - int i; - - printf(" StrAssign \n"); - { - printf(" Ϊ S ֵ...\n"); - StrAssign(&S, chars); - printf(" S = "); - PrintElem(S); - } - PressEnterToContinue(); - - printf(" StrEmpty \n"); - { - StrEmpty(S) ? printf(" S Ϊգ\n") : printf(" S Ϊգ\n"); - } - PressEnterToContinue(); - - printf(" StrLength \n"); - { - i = StrLength(S); - printf(" S ijΪ %d \n", i); - } - PressEnterToContinue(); - - printf(" StrCopy \n"); - { - printf(" S T ...\n"); - StrCopy(&T, S); - printf(" T = "); - PrintElem(T); - } - PressEnterToContinue(); - - printf(" StrCompare \n"); - { - printf(" Ƚַ S T ...\n"); - i = StrCompare(S, T); - i == 0 ? printf(" S==T\n") : (i < 0 ? printf(" ST\n")); - } - PressEnterToContinue(); - - printf(" StrInsert \n"); - { - StrAssign(&T, "*****"); - printf(" \"*****\" 뵽 S ĵ 11 λô... \n"); - StrInsert(&S, 11, T); - printf(" S = "); - PrintElem(S); - } - PressEnterToContinue(); - - printf(" Index \n"); - { - StrAssign(&T, "*****"); - printf(" ȡ \"*****\" ڴ S еĵһγֵλ...\n"); - i = Index(S, T, 1); - printf(" \"*****\" S еһγֵλΪ %d \n", i); - } - PressEnterToContinue(); - - printf(" SubString \n"); - { - printf(" sub S е 11 ַ 5 ַ...\n"); - SubString(&sub, S, 11, 5); - printf(" Sub = "); - PrintElem(sub); - } - PressEnterToContinue(); - - printf(" Replace \n"); - { - StrAssign(&T, "*****"); - StrAssign(&V, "#####@@@@@"); - printf(" \"#####@@@@@\" 滻Sе \"*****\" ...\n"); - Replace(&S, T, V); - printf(" S = "); - PrintElem(S); - } - PressEnterToContinue(); - - printf(" StrDelete \n"); - { - printf(" ɾ S е 16 ַ 5 ַ...\n"); - StrDelete(&S, 16, 5); - printf(" S = "); - PrintElem(S); - } - PressEnterToContinue(); - - printf(" ClearString \n"); - { - printf(" S ǰ"); - StrEmpty(S) ? printf(" S Ϊգ\n") : printf(" S Ϊգ\n"); - - ClearString(&S); - - printf(" S "); - StrEmpty(S) ? printf(" S Ϊգ\n") : printf(" S Ϊգ\n"); - } - PressEnterToContinue(); - - printf(" Concat \n"); - { - LString Tmp, S1, S2; - - StrAssign(&S1, "+++++"); - StrAssign(&S2, "-----"); - - printf(" \"+++++\" \"-----\" γ Tmp ...\n"); - Concat(&Tmp, S1, S2); - printf(" Tmp = "); - PrintElem(Tmp); - } - PressEnterToContinue(); - - return 0; -} - // Ժӡַ void PrintElem(LString S) { int i = 0; @@ -150,3 +26,125 @@ void PrintElem(LString S) { printf("\n"); } + + +int main(int argc, char** argv) { + char* chars = "01234567899876543210"; + LString S, T, sub, V; + int i; + + printf(" StrAssign \n"); + { + printf(" Ϊ S ֵ...\n"); + StrAssign(&S, chars); + printf(" S = "); + PrintElem(S); + } + PressEnterToContinue(debug); + + printf(" StrEmpty \n"); + { + StrEmpty(S) ? printf(" S Ϊգ\n") : printf(" S Ϊգ\n"); + } + PressEnterToContinue(debug); + + printf(" StrLength \n"); + { + i = StrLength(S); + printf(" S ijΪ %d \n", i); + } + PressEnterToContinue(debug); + + printf(" StrCopy \n"); + { + printf(" S T ...\n"); + StrCopy(&T, S); + printf(" T = "); + PrintElem(T); + } + PressEnterToContinue(debug); + + printf(" StrCompare \n"); + { + printf(" Ƚַ S T ...\n"); + i = StrCompare(S, T); + i == 0 ? printf(" S==T\n") : (i < 0 ? printf(" ST\n")); + } + PressEnterToContinue(debug); + + printf(" StrInsert \n"); + { + StrAssign(&T, "*****"); + printf(" \"*****\" 뵽 S ĵ 11 λô... \n"); + StrInsert(&S, 11, T); + printf(" S = "); + PrintElem(S); + } + PressEnterToContinue(debug); + + printf(" Index \n"); + { + StrAssign(&T, "*****"); + printf(" ȡ \"*****\" ڴ S еĵһγֵλ...\n"); + i = Index(S, T, 1); + printf(" \"*****\" S еһγֵλΪ %d \n", i); + } + PressEnterToContinue(debug); + + printf(" SubString \n"); + { + printf(" sub S е 11 ַ 5 ַ...\n"); + SubString(&sub, S, 11, 5); + printf(" Sub = "); + PrintElem(sub); + } + PressEnterToContinue(debug); + + printf(" Replace \n"); + { + StrAssign(&T, "*****"); + StrAssign(&V, "#####@@@@@"); + printf(" \"#####@@@@@\" 滻Sе \"*****\" ...\n"); + Replace(&S, T, V); + printf(" S = "); + PrintElem(S); + } + PressEnterToContinue(debug); + + printf(" StrDelete \n"); + { + printf(" ɾ S е 16 ַ 5 ַ...\n"); + StrDelete(&S, 16, 5); + printf(" S = "); + PrintElem(S); + } + PressEnterToContinue(debug); + + printf(" ClearString \n"); + { + printf(" S ǰ"); + StrEmpty(S) ? printf(" S Ϊգ\n") : printf(" S Ϊգ\n"); + + ClearString(&S); + + printf(" S "); + StrEmpty(S) ? printf(" S Ϊգ\n") : printf(" S Ϊգ\n"); + } + PressEnterToContinue(debug); + + printf(" Concat \n"); + { + LString Tmp, S1, S2; + + StrAssign(&S1, "+++++"); + StrAssign(&S2, "-----"); + + printf(" \"+++++\" \"-----\" γ Tmp ...\n"); + Concat(&Tmp, S1, S2); + printf(" Tmp = "); + PrintElem(Tmp); + } + PressEnterToContinue(debug); + + return 0; +} diff --git a/VisualC++/CourseBook/0404_KMP/KMP-main.c b/VisualC++/CourseBook/0404_KMP/KMP-main.c index 451bec1..ac666f4 100644 --- a/VisualC++/CourseBook/0404_KMP/KMP-main.c +++ b/VisualC++/CourseBook/0404_KMP/KMP-main.c @@ -1,7 +1,16 @@ #include "KMP.h" //**04 **// // Ժӡַ -void PrintElem(SString S); +void PrintElem(SString S) { + int i; + + for(i = 1; i <= S[0]; i++) { + printf("%c", S[i]); + } + + printf("\n"); +} + int main(int argc, char** argv) { char* s = "abaaabcaabaabcacabaabcaabaabcac"; @@ -51,14 +60,3 @@ int main(int argc, char** argv) { return 0; } - -// Ժӡַ -void PrintElem(SString S) { - int i; - - for(i = 1; i <= S[0]; i++) { - printf("%c", S[i]); - } - - printf("\n"); -} diff --git a/VisualC++/CourseBook/0501_Array/Array-main.c b/VisualC++/CourseBook/0501_Array/Array-main.c index 367298f..2e50ffa 100644 --- a/VisualC++/CourseBook/0501_Array/Array-main.c +++ b/VisualC++/CourseBook/0501_Array/Array-main.c @@ -59,7 +59,7 @@ int main(int argc, char** argv) { printf(" ʼһάΪ<2,3,4>ά A ...\n"); InitArray(&A, 3, 2, 3, 4); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Assign \n"); @@ -78,7 +78,7 @@ int main(int argc, char** argv) { printf(" A = "); ArrayPrint(A); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Value \n"); @@ -89,7 +89,7 @@ int main(int argc, char** argv) { Value(A, &x, 1, 1, 1); printf(" A[1][1][1] = %d\n", x); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DestroyArray \n"); @@ -102,7 +102,7 @@ int main(int argc, char** argv) { printf(" A "); A.dim != 0 ? printf(" A ڣ\n") : printf(" A ڣ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; diff --git a/VisualC++/CourseBook/0502_TSMatrix/TSMatrix-main.c b/VisualC++/CourseBook/0502_TSMatrix/TSMatrix-main.c index 855523a..5f8b939 100644 --- a/VisualC++/CourseBook/0502_TSMatrix/TSMatrix-main.c +++ b/VisualC++/CourseBook/0502_TSMatrix/TSMatrix-main.c @@ -10,7 +10,7 @@ int main(int argc, char** argv) { CreateSMatrix(&M, "TestData_M.txt"); CreateSMatrix(&N, "TestData_N.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PrintSMatrix \n"); @@ -21,7 +21,7 @@ int main(int argc, char** argv) { printf(" N = \n"); PrintSMatrix(N); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CopySMatrix \n"); @@ -34,7 +34,7 @@ int main(int argc, char** argv) { printf(" Tmp = \n"); PrintSMatrix(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" AddSMatrix \n"); @@ -46,7 +46,7 @@ int main(int argc, char** argv) { printf(" Q1 = M + N = \n"); PrintSMatrix(Q1); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" SubSMatrix \n"); @@ -58,7 +58,7 @@ int main(int argc, char** argv) { printf(" Q2 = M - N = \n"); PrintSMatrix(Q2); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" MultSMatrix \n"); @@ -70,7 +70,7 @@ int main(int argc, char** argv) { printf(" Q3 = M * N = \n"); PrintSMatrix(Q3); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" TransposeSMatrix \n"); @@ -82,7 +82,7 @@ int main(int argc, char** argv) { printf(" T1 = M(T) = \n"); PrintSMatrix(T1); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" FastTransposeSMatrix \n"); @@ -94,7 +94,7 @@ int main(int argc, char** argv) { printf(" T2 = M(T) = \n"); PrintSMatrix(T2); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DestroySMatrix \n"); @@ -107,7 +107,7 @@ int main(int argc, char** argv) { printf(" M "); !M.mu && !M.nu && !M.tu ? printf(" M ڣ\n") : printf(" M ڣ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/VisualC++/CourseBook/0503_RLSMatrix/RLSMatrix-main.c b/VisualC++/CourseBook/0503_RLSMatrix/RLSMatrix-main.c index 190054a..75943bb 100644 --- a/VisualC++/CourseBook/0503_RLSMatrix/RLSMatrix-main.c +++ b/VisualC++/CourseBook/0503_RLSMatrix/RLSMatrix-main.c @@ -10,7 +10,7 @@ int main(int argc, char** argv) { CreateSMatrix(&M, "TestData_M.txt"); CreateSMatrix(&N, "TestData_N.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PrintSMatrix \n"); @@ -21,7 +21,7 @@ int main(int argc, char** argv) { printf(" N = \n"); PrintSMatrix(N); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CopySMatrix \n"); @@ -34,7 +34,7 @@ int main(int argc, char** argv) { printf(" Tmp = \n"); PrintSMatrix(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" AddSMatrix \n"); @@ -46,7 +46,7 @@ int main(int argc, char** argv) { printf(" Q1 = M + N = \n"); PrintSMatrix(Q1); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" SubtSMatrix \n"); @@ -58,7 +58,7 @@ int main(int argc, char** argv) { printf(" Q2 = M - N = \n"); PrintSMatrix(Q2); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" MultSMatrix \n"); @@ -70,7 +70,7 @@ int main(int argc, char** argv) { printf(" Q3 = M * N = \n"); PrintSMatrix(Q3); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" TransposeSMatrix \n"); @@ -82,7 +82,7 @@ int main(int argc, char** argv) { printf(" T1 = M(T) = \n"); PrintSMatrix(T1); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" FastTransposeSMatrix \n"); @@ -94,7 +94,7 @@ int main(int argc, char** argv) { printf(" T2 = M(T) = \n"); PrintSMatrix(T2); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DestroySMatrix \n"); @@ -107,7 +107,7 @@ int main(int argc, char** argv) { printf(" M "); !M.mu && !M.nu && !M.tu ? printf(" M ڣ\n") : printf(" M ڣ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/VisualC++/CourseBook/0504_CrossList/CrossList-main.c b/VisualC++/CourseBook/0504_CrossList/CrossList-main.c index 27a899a..e80a066 100644 --- a/VisualC++/CourseBook/0504_CrossList/CrossList-main.c +++ b/VisualC++/CourseBook/0504_CrossList/CrossList-main.c @@ -10,7 +10,7 @@ int main(int argc, char** argv) { CreateSMatrix(&M, "TestData_M.txt"); CreateSMatrix(&N, "TestData_N.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PrintSMatrix \n"); @@ -21,7 +21,7 @@ int main(int argc, char** argv) { printf(" N = \n"); PrintSMatrix(N); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CopySMatrix \n"); @@ -34,7 +34,7 @@ int main(int argc, char** argv) { printf(" Tmp = \n"); PrintSMatrix(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" AddSMatrix \n"); @@ -46,7 +46,7 @@ int main(int argc, char** argv) { printf(" Q1 = M + N = \n"); PrintSMatrix(Q1); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" SubtSMatrix \n"); @@ -58,7 +58,7 @@ int main(int argc, char** argv) { printf(" Q2 = M - N = \n"); PrintSMatrix(Q2); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" MultSMatrix \n"); @@ -70,7 +70,7 @@ int main(int argc, char** argv) { printf(" Q3 = M * N = \n"); PrintSMatrix(Q3); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" TransposeSMatrix \n"); @@ -82,7 +82,7 @@ int main(int argc, char** argv) { printf(" T = M(T) = \n"); PrintSMatrix(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DestroySMatrix \n"); @@ -95,7 +95,7 @@ int main(int argc, char** argv) { printf(" M "); !M.mu && !M.nu && !M.tu ? printf(" M ڣ\n") : printf(" M ڣ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/VisualC++/CourseBook/0505_GList-HT/GList-HT-main.c b/VisualC++/CourseBook/0505_GList-HT/GList-HT-main.c index e92b72c..4539252 100644 --- a/VisualC++/CourseBook/0505_GList-HT/GList-HT-main.c +++ b/VisualC++/CourseBook/0505_GList-HT/GList-HT-main.c @@ -1,7 +1,11 @@ #include #include "GList-HT.h" //**05 ͹**// -void PrintElem(AtomType e); //ӡԭ +// ӡԭ +void PrintElem(AtomType e) { + printf("%c ", e); +} + int main(int argc, char** argv) { GList Tmp, G; @@ -13,7 +17,7 @@ int main(int argc, char** argv) { printf(" յĹ Tmp ...\n"); InitGList(&Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GListEmpty \n"); { @@ -22,7 +26,7 @@ int main(int argc, char** argv) { tag = GListEmpty(Tmp); tag ? printf(" Tmp Ϊգ\n") : printf(" Tmp Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CreateGList \n"); { @@ -42,7 +46,7 @@ int main(int argc, char** argv) { StrAssign(S3, s3); CreateGList(&g3, S3); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" InsertFirst \n"); { @@ -51,7 +55,7 @@ int main(int argc, char** argv) { InsertFirst(&Tmp, g2); InsertFirst(&Tmp, g1); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Traverse \n"); { @@ -59,14 +63,14 @@ int main(int argc, char** argv) { Traverse(Tmp, PrintElem); printf("\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PrintGList \n"); { printf(" Tmp = "); PrintGList(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CopyGList \n"); { @@ -74,7 +78,7 @@ int main(int argc, char** argv) { CopyGList(&G, Tmp); PrintGList(G); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DeleteFirst \n"); { @@ -88,19 +92,19 @@ int main(int argc, char** argv) { printf(" Tmp = "); PrintGList(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GListLength \n"); { printf(" G ijΪ %d \n", GListLength(G)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GListDepth \n"); { printf(" G Ϊ %d\n", GListDepth(G)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GetHead \n"); { @@ -110,7 +114,7 @@ int main(int argc, char** argv) { H = GetHead(G); PrintGList(H); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GetTail \n"); { @@ -120,7 +124,7 @@ int main(int argc, char** argv) { T = GetTail(G); PrintGList(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DestroyGList \n"); { @@ -132,11 +136,7 @@ int main(int argc, char** argv) { printf(" G "); G ? printf(" G ڣ\n") : printf(" G ڣ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } - -void PrintElem(AtomType e) { - printf("%c ", e); -} diff --git a/VisualC++/CourseBook/0506_GList-E/GList-E-main.c b/VisualC++/CourseBook/0506_GList-E/GList-E-main.c index b33b5e8..9d6ac6c 100644 --- a/VisualC++/CourseBook/0506_GList-E/GList-E-main.c +++ b/VisualC++/CourseBook/0506_GList-E/GList-E-main.c @@ -1,7 +1,11 @@ #include #include "GList-E.h" //**05 ͹**// -void PrintElem(AtomType e); //ӡԭ +// ӡԭ +void PrintElem(AtomType e) { + printf("%c ", e); +} + int main(int argc, char** argv) { GList Tmp, G; @@ -13,7 +17,7 @@ int main(int argc, char** argv) { printf(" յĹ Tmp ...\n"); InitGList(&Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GListEmpty \n"); { @@ -22,7 +26,7 @@ int main(int argc, char** argv) { tag = GListEmpty(Tmp); tag ? printf(" Tmp Ϊգ\n") : printf(" Tmp Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CreateGList \n"); { @@ -42,7 +46,7 @@ int main(int argc, char** argv) { StrAssign(S3, s3); CreateGList(&g3, S3); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" InsertFirst \n"); { @@ -51,7 +55,7 @@ int main(int argc, char** argv) { InsertFirst(&Tmp, g2); InsertFirst(&Tmp, g1); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Traverse \n"); { @@ -59,14 +63,14 @@ int main(int argc, char** argv) { Traverse(Tmp, PrintElem); printf("\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PrintGList \n"); { printf(" Tmp = "); PrintGList(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CopyGList \n"); { @@ -74,7 +78,7 @@ int main(int argc, char** argv) { CopyGList(&G, Tmp); PrintGList(G); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DeleteFirst \n"); { @@ -88,19 +92,19 @@ int main(int argc, char** argv) { printf(" Tmp = "); PrintGList(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GListLength \n"); { printf(" G ijΪ%d\n", GListLength(G)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GListDepth_1 \n"); { printf(" G Ϊ%d\n", GListDepth(G)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GetHead \n"); { @@ -110,7 +114,7 @@ int main(int argc, char** argv) { H = GetHead(G); PrintGList(H); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GetTail \n"); { @@ -120,7 +124,7 @@ int main(int argc, char** argv) { T = GetTail(G); PrintGList(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DestroyGList \n"); { @@ -132,11 +136,7 @@ int main(int argc, char** argv) { printf(" G "); G ? printf(" G ڣ\n") : printf(" G ڣ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } - -void PrintElem(AtomType e) { - printf("%c ", e); -} diff --git a/VisualC++/CourseBook/0601_SqBiTree/SqBiTree-main.c b/VisualC++/CourseBook/0601_SqBiTree/SqBiTree-main.c index 2227b81..efe0c33 100644 --- a/VisualC++/CourseBook/0601_SqBiTree/SqBiTree-main.c +++ b/VisualC++/CourseBook/0601_SqBiTree/SqBiTree-main.c @@ -17,7 +17,7 @@ int main(int argc, char* argv[]) { printf(" ʼն T ...\n"); InitBiTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CreateBiTree \n"); @@ -25,14 +25,14 @@ int main(int argc, char* argv[]) { printf(" д T ...\n"); CreateBiTree(T, "TestData_Pre.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" BiTreeDepth \n"); { printf(" T Ϊ%d \n", BiTreeDepth(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PrintTree \n"); @@ -40,7 +40,7 @@ int main(int argc, char* argv[]) { printf(" Ľṹӡ T ...\n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PreOrderTraverse \n"); @@ -48,7 +48,7 @@ int main(int argc, char* argv[]) { printf(" ǰ T = "); PreOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" InOrderTraverse \n"); @@ -56,7 +56,7 @@ int main(int argc, char* argv[]) { printf(" T = "); InOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PostOrderTraverse \n"); @@ -64,7 +64,7 @@ int main(int argc, char* argv[]) { printf(" T = "); PostOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LevelOrderTraverse \n"); @@ -72,7 +72,7 @@ int main(int argc, char* argv[]) { printf(" T = "); LevelOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Value \n"); @@ -80,7 +80,7 @@ int main(int argc, char* argv[]) { TElemType e = 'F'; printf(" %c ֵΪ %c\n", e, Value(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Assign \n"); @@ -91,14 +91,14 @@ int main(int argc, char* argv[]) { Assign(T, e, value); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Root \n"); { printf(" T ĸΪ %c\n", Root(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Parent \n"); @@ -106,7 +106,7 @@ int main(int argc, char* argv[]) { TElemType e = 'E'; printf(" %c ˫Ϊ%c \n", e, Parent(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LeftChildRightChild \n"); @@ -114,7 +114,7 @@ int main(int argc, char* argv[]) { TElemType e = 'E'; printf(" %c ӽֵΪ%c ҺӽֵΪ%c\n", e, LeftChild(T, e), RightChild(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LeftSibling \n"); @@ -122,7 +122,7 @@ int main(int argc, char* argv[]) { TElemType e = 'I'; printf(" %c ֵΪ%c\n", e, LeftSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" RightSibling \n"); @@ -130,7 +130,7 @@ int main(int argc, char* argv[]) { TElemType e = 'H'; printf(" %c ֵΪ%c\n", e, RightSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" InsertChild \n"); @@ -157,7 +157,7 @@ int main(int argc, char* argv[]) { InsertChild(T, p2, 0, c2); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DeleteChild \n"); @@ -173,7 +173,7 @@ int main(int argc, char* argv[]) { DeleteChild(T, p2, 0); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearBiTreeBiTreeEmpty \n"); @@ -186,7 +186,7 @@ int main(int argc, char* argv[]) { printf(" պ"); BiTreeEmpty(T) ? printf("T Ϊգ\n") : printf("T Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/VisualC++/CourseBook/0602_BiTree/BiTree-main.c b/VisualC++/CourseBook/0602_BiTree/BiTree-main.c index a4365ff..3c49d2d 100644 --- a/VisualC++/CourseBook/0602_BiTree/BiTree-main.c +++ b/VisualC++/CourseBook/0602_BiTree/BiTree-main.c @@ -17,7 +17,7 @@ int main(int argc, char* argv[]) { printf(" ʼն T ...\n"); InitBiTree(&T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CreateBiTree \n"); @@ -25,14 +25,14 @@ int main(int argc, char* argv[]) { printf(" д T ...\n"); CreateBiTree(&T, "TestData_Pre.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" BiTreeDepth \n"); { printf(" T Ϊ%d \n", BiTreeDepth(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PrintTree \n"); @@ -40,7 +40,7 @@ int main(int argc, char* argv[]) { printf(" Ľṹӡ T ...\n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PreOrderTraverse \n"); @@ -48,7 +48,7 @@ int main(int argc, char* argv[]) { printf(" ǰ T = "); PreOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" InOrderTraverse \n"); @@ -56,7 +56,7 @@ int main(int argc, char* argv[]) { printf(" T = "); InOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PostOrderTraverse \n"); @@ -64,7 +64,7 @@ int main(int argc, char* argv[]) { printf(" T = "); PostOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LevelOrderTraverse \n"); @@ -72,7 +72,7 @@ int main(int argc, char* argv[]) { printf(" T = "); LevelOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Value \n"); @@ -80,7 +80,7 @@ int main(int argc, char* argv[]) { TElemType e = 'F'; printf(" %c ֵΪ %c\n", e, Value(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Assign \n"); @@ -91,14 +91,14 @@ int main(int argc, char* argv[]) { Assign(T, e, value); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Root \n"); { printf(" T ĸΪ %c\n", Root(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Parent \n"); @@ -106,7 +106,7 @@ int main(int argc, char* argv[]) { TElemType e = 'E'; printf(" %c ˫Ϊ%c \n", e, Parent(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LeftChildRightChild \n"); @@ -114,7 +114,7 @@ int main(int argc, char* argv[]) { TElemType e = 'E'; printf(" %c ӽֵΪ%c ҺӽֵΪ%c\n", e, LeftChild(T, e), RightChild(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LeftSibling \n"); @@ -122,7 +122,7 @@ int main(int argc, char* argv[]) { TElemType e = 'I'; printf(" %c ֵΪ%c\n", e, LeftSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" RightSibling \n"); @@ -130,7 +130,7 @@ int main(int argc, char* argv[]) { TElemType e = 'H'; printf(" %c ֵΪ%c\n", e, RightSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" InsertChild \n"); @@ -157,7 +157,7 @@ int main(int argc, char* argv[]) { InsertChild(T, p2, 0, c2); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DeleteChild \n"); @@ -173,7 +173,7 @@ int main(int argc, char* argv[]) { DeleteChild(T, p2, 0); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearBiTreeBiTreeEmpty \n"); @@ -186,7 +186,7 @@ int main(int argc, char* argv[]) { printf(" պ"); BiTreeEmpty(T) ? printf("T Ϊգ\n") : printf("T Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/VisualC++/CourseBook/0603_BiTriTree/BiTriTree-main.c b/VisualC++/CourseBook/0603_BiTriTree/BiTriTree-main.c index 3533f67..f3a0d93 100644 --- a/VisualC++/CourseBook/0603_BiTriTree/BiTriTree-main.c +++ b/VisualC++/CourseBook/0603_BiTriTree/BiTriTree-main.c @@ -16,7 +16,7 @@ int main(int argc, char* argv[]) { printf(" ʼն T ...\n"); InitBiTree(&T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CreateBiTree \n"); @@ -24,14 +24,14 @@ int main(int argc, char* argv[]) { printf(" д T ...\n"); CreateBiTree(&T, "TestData_Pre.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" BiTreeDepth \n"); { printf(" T Ϊ%d \n", BiTreeDepth(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PrintTree \n"); @@ -39,7 +39,7 @@ int main(int argc, char* argv[]) { printf(" Ľṹӡ T ...\n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PreOrderTraverse \n"); @@ -47,7 +47,7 @@ int main(int argc, char* argv[]) { printf(" ǰ T = "); PreOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" InOrderTraverse \n"); @@ -55,7 +55,7 @@ int main(int argc, char* argv[]) { printf(" T = "); InOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PostOrderTraverse \n"); @@ -63,7 +63,7 @@ int main(int argc, char* argv[]) { printf(" T = "); PostOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LevelOrderTraverse \n"); @@ -71,7 +71,7 @@ int main(int argc, char* argv[]) { printf(" T = "); LevelOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Value \n"); @@ -79,7 +79,7 @@ int main(int argc, char* argv[]) { TElemType e = 'F'; printf(" %c ֵΪ %c\n", e, Value(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Assign \n"); @@ -90,14 +90,14 @@ int main(int argc, char* argv[]) { Assign(T, e, value); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Root \n"); { printf(" T ĸΪ %c\n", Root(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Parent \n"); @@ -105,7 +105,7 @@ int main(int argc, char* argv[]) { TElemType e = 'E'; printf(" %c ˫Ϊ%c \n", e, Parent(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LeftChildRightChild \n"); @@ -113,7 +113,7 @@ int main(int argc, char* argv[]) { TElemType e = 'E'; printf(" %c ӽֵΪ%c ҺӽֵΪ%c\n", e, LeftChild(T, e), RightChild(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LeftSibling \n"); @@ -121,7 +121,7 @@ int main(int argc, char* argv[]) { TElemType e = 'I'; printf(" %c ֵΪ%c\n", e, LeftSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" RightSibling \n"); @@ -129,7 +129,7 @@ int main(int argc, char* argv[]) { TElemType e = 'H'; printf(" %c ֵΪ%c\n", e, RightSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" InsertChild \n"); @@ -156,7 +156,7 @@ int main(int argc, char* argv[]) { InsertChild(T, p2, 0, c2); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DeleteChild \n"); @@ -172,7 +172,7 @@ int main(int argc, char* argv[]) { DeleteChild(T, p2, 0); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearBiTreeBiTreeEmpty \n"); @@ -185,7 +185,7 @@ int main(int argc, char* argv[]) { printf(" պ"); BiTreeEmpty(T) ? printf("T Ϊգ\n") : printf("T Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/VisualC++/CourseBook/0604_BiThrTree/BiThrTree-main.c b/VisualC++/CourseBook/0604_BiThrTree/BiThrTree-main.c index 032bbd1..600f6cc 100644 --- a/VisualC++/CourseBook/0604_BiThrTree/BiThrTree-main.c +++ b/VisualC++/CourseBook/0604_BiThrTree/BiThrTree-main.c @@ -24,5 +24,5 @@ int main(int argc, char* argv[]) { printf(" ȫ...\n"); InOrderTraverse_Thr(Thr, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); } diff --git a/VisualC++/CourseBook/0605_PTree/PTree-main.c b/VisualC++/CourseBook/0605_PTree/PTree-main.c index aeeefad..d077e80 100644 --- a/VisualC++/CourseBook/0605_PTree/PTree-main.c +++ b/VisualC++/CourseBook/0605_PTree/PTree-main.c @@ -17,7 +17,7 @@ int main(int argc, char* argv[]) { printf(" ʼ T ...\n"); InitTree(&T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CreateTree \n"); @@ -25,14 +25,14 @@ int main(int argc, char* argv[]) { printf(" д T ...\n"); CreateTree(&T, "TestData_T.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" TreeDepth \n"); { printf(" T Ϊ%d \n", TreeDepth(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PrintTree \n"); @@ -41,7 +41,7 @@ int main(int argc, char* argv[]) { printf(" T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PreOrderTraverse \n"); @@ -49,7 +49,7 @@ int main(int argc, char* argv[]) { printf(" ǰ T = "); PreOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PostOrderTraverse \n"); @@ -57,7 +57,7 @@ int main(int argc, char* argv[]) { printf(" T = "); PostOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LevelOrderTraverse \n"); @@ -65,7 +65,7 @@ int main(int argc, char* argv[]) { printf(" T = "); LevelOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Value \n"); @@ -73,7 +73,7 @@ int main(int argc, char* argv[]) { TElemType e = 'F'; printf(" %c ֵΪ %c\n", e, Value(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Assign \n"); @@ -85,14 +85,14 @@ int main(int argc, char* argv[]) { printf(" T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Root \n"); { printf(" T ĸΪ %c\n", Root(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Parent \n"); @@ -100,7 +100,7 @@ int main(int argc, char* argv[]) { TElemType e = 'E'; printf(" %c ˫Ϊ%c \n", e, Parent(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ChildCount \n"); @@ -108,7 +108,7 @@ int main(int argc, char* argv[]) { TElemType e = 'X'; printf(" %c %d \n", e, ChildCount(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Child \n"); @@ -117,7 +117,7 @@ int main(int argc, char* argv[]) { int i = 2; printf(" %c ĵ %d ӽֵΪ%c \n", e, i, Child(T, e, i)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LeftSibling \n"); @@ -125,7 +125,7 @@ int main(int argc, char* argv[]) { TElemType e = 'H'; printf(" %c ֵΪ%c\n", e, LeftSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" RightSibling \n"); @@ -133,7 +133,7 @@ int main(int argc, char* argv[]) { TElemType e = 'H'; printf(" %c ֵΪ%c\n", e, RightSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" InsertChild \n"); @@ -153,7 +153,7 @@ int main(int argc, char* argv[]) { printf(" T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DeleteChild \n"); @@ -166,7 +166,7 @@ int main(int argc, char* argv[]) { printf(" T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearTreeTreeEmpty \n"); @@ -179,7 +179,7 @@ int main(int argc, char* argv[]) { printf(" պ"); TreeEmpty(T) ? printf("T Ϊգ\n") : printf("T Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/VisualC++/CourseBook/0606_CTree/CTree-main.c b/VisualC++/CourseBook/0606_CTree/CTree-main.c index 047ad9a..1763723 100644 --- a/VisualC++/CourseBook/0606_CTree/CTree-main.c +++ b/VisualC++/CourseBook/0606_CTree/CTree-main.c @@ -17,7 +17,7 @@ int main(int argc, char* argv[]) { printf(" ʼ T ...\n"); InitTree(&T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CreateTree \n"); @@ -25,14 +25,14 @@ int main(int argc, char* argv[]) { printf(" д T ...\n"); CreateTree(&T, "TestData_T.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" TreeDepth \n"); { printf(" T Ϊ%d \n", TreeDepth(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PrintTree \n"); @@ -41,7 +41,7 @@ int main(int argc, char* argv[]) { printf(" T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PreOrderTraverse \n"); @@ -49,7 +49,7 @@ int main(int argc, char* argv[]) { printf(" ǰ T = "); PreOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PostOrderTraverse \n"); @@ -57,7 +57,7 @@ int main(int argc, char* argv[]) { printf(" T = "); PostOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LevelOrderTraverse \n"); @@ -65,7 +65,7 @@ int main(int argc, char* argv[]) { printf(" T = "); LevelOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Value \n"); @@ -73,7 +73,7 @@ int main(int argc, char* argv[]) { TElemType e = 'F'; printf(" %c ֵΪ %c\n", e, Value(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Assign \n"); @@ -85,14 +85,14 @@ int main(int argc, char* argv[]) { printf(" T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Root \n"); { printf(" T ĸΪ %c\n", Root(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Parent \n"); @@ -100,7 +100,7 @@ int main(int argc, char* argv[]) { TElemType e = 'E'; printf(" %c ˫Ϊ%c \n", e, Parent(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ChildCount \n"); @@ -108,7 +108,7 @@ int main(int argc, char* argv[]) { TElemType e = 'X'; printf(" %c %d \n", e, ChildCount(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Child \n"); @@ -117,7 +117,7 @@ int main(int argc, char* argv[]) { int i = 2; printf(" %c ĵ %d ӽֵΪ%c \n", e, i, Child(T, e, i)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LeftSibling \n"); @@ -125,7 +125,7 @@ int main(int argc, char* argv[]) { TElemType e = 'H'; printf(" %c ֵΪ%c\n", e, LeftSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" RightSibling \n"); @@ -133,7 +133,7 @@ int main(int argc, char* argv[]) { TElemType e = 'H'; printf(" %c ֵΪ%c\n", e, RightSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" InsertChild \n"); @@ -153,7 +153,7 @@ int main(int argc, char* argv[]) { printf(" T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DeleteChild \n"); @@ -166,7 +166,7 @@ int main(int argc, char* argv[]) { printf(" T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearTreeTreeEmpty \n"); @@ -179,7 +179,7 @@ int main(int argc, char* argv[]) { printf(" պ"); TreeEmpty(T) ? printf("T Ϊգ\n") : printf("T Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/VisualC++/CourseBook/0607_CSTree/CSTree-main.c b/VisualC++/CourseBook/0607_CSTree/CSTree-main.c index 5b3864c..65ebb4c 100644 --- a/VisualC++/CourseBook/0607_CSTree/CSTree-main.c +++ b/VisualC++/CourseBook/0607_CSTree/CSTree-main.c @@ -17,7 +17,7 @@ int main(int argc, char* argv[]) { printf(" ʼ T ...\n"); InitTree(&T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" CreateTree \n"); @@ -25,14 +25,14 @@ int main(int argc, char* argv[]) { printf(" д T ...\n"); CreateTree(&T, "TestData_T.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" TreeDepth \n"); { printf(" T Ϊ%d \n", TreeDepth(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PrintTree \n"); @@ -41,7 +41,7 @@ int main(int argc, char* argv[]) { printf(" T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PreOrderTraverse \n"); @@ -49,7 +49,7 @@ int main(int argc, char* argv[]) { printf(" ǰ T = "); PreOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PostOrderTraverse \n"); @@ -57,7 +57,7 @@ int main(int argc, char* argv[]) { printf(" T = "); PostOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LevelOrderTraverse \n"); @@ -65,7 +65,7 @@ int main(int argc, char* argv[]) { printf(" T = "); LevelOrderTraverse(T, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Value \n"); @@ -73,7 +73,7 @@ int main(int argc, char* argv[]) { TElemType e = 'F'; printf(" %c ֵΪ %c\n", e, Value(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Assign \n"); @@ -85,14 +85,14 @@ int main(int argc, char* argv[]) { printf(" T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Root \n"); { printf(" T ĸΪ %c\n", Root(T)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Parent \n"); @@ -100,7 +100,7 @@ int main(int argc, char* argv[]) { TElemType e = 'E'; printf(" %c ˫Ϊ%c \n", e, Parent(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ChildCount \n"); @@ -108,7 +108,7 @@ int main(int argc, char* argv[]) { TElemType e = 'X'; printf(" %c %d \n", e, ChildCount(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Child \n"); @@ -117,7 +117,7 @@ int main(int argc, char* argv[]) { int i = 2; printf(" %c ĵ %d ӽֵΪ%c \n", e, i, Child(T, e, i)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" LeftSibling \n"); @@ -125,7 +125,7 @@ int main(int argc, char* argv[]) { TElemType e = 'H'; printf(" %c ֵΪ%c\n", e, LeftSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" RightSibling \n"); @@ -133,7 +133,7 @@ int main(int argc, char* argv[]) { TElemType e = 'H'; printf(" %c ֵΪ%c\n", e, RightSibling(T, e)); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" InsertChild \n"); @@ -153,7 +153,7 @@ int main(int argc, char* argv[]) { printf(" T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" DeleteChild \n"); @@ -166,7 +166,7 @@ int main(int argc, char* argv[]) { printf(" T = \n"); PrintTree(T); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ClearTreeTreeEmpty \n"); @@ -179,7 +179,7 @@ int main(int argc, char* argv[]) { printf(" պ"); TreeEmpty(T) ? printf("T Ϊգ\n") : printf("T Ϊգ\n"); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/VisualC++/CourseBook/0608_MFSet/MFSet-main.c b/VisualC++/CourseBook/0608_MFSet/MFSet-main.c index 2a4ac2f..76d93e0 100644 --- a/VisualC++/CourseBook/0608_MFSet/MFSet-main.c +++ b/VisualC++/CourseBook/0608_MFSet/MFSet-main.c @@ -28,7 +28,7 @@ int main(int argc, char* argv[]) { printf(" ʼԪϵ R2 ...\n"); initial_relation(&R2, "TestData_R2.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PrintSet \n"); @@ -36,7 +36,7 @@ int main(int argc, char* argv[]) { printf(" S ...\n"); PrintSet(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); // һ @@ -57,7 +57,7 @@ int main(int argc, char* argv[]) { printf(" S ...\n"); PrintSet(S); } - PressEnterToContinue(); + PressEnterToContinue(debug); // @@ -78,7 +78,7 @@ int main(int argc, char* argv[]) { // printf(" S ...\n"); // PrintSet(S); // } -// PressEnterToContinue(); +// PressEnterToContinue(debug); return OK; } diff --git a/VisualC++/CourseBook/0609_HuffmanTree/HuffmanTree-main.c b/VisualC++/CourseBook/0609_HuffmanTree/HuffmanTree-main.c index 58f8379..6768b84 100644 --- a/VisualC++/CourseBook/0609_HuffmanTree/HuffmanTree-main.c +++ b/VisualC++/CourseBook/0609_HuffmanTree/HuffmanTree-main.c @@ -12,7 +12,7 @@ int main(int argc, char* argv[]) { printf(" ʼҪdzʼȨֵϢ...\n"); InitEnvironment(&w, &n, "TestData_HT.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" HuffmanCodeing \n"); @@ -27,7 +27,7 @@ int main(int argc, char* argv[]) { printf(" ӡշ...\n"); PrintHuffmanCode(HT, HC); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" HuffmanDecoding \n"); @@ -40,7 +40,7 @@ int main(int argc, char* argv[]) { printf(" ӡȨֵϢ...\n"); PrintWeight(HC, weight, n); } - PressEnterToContinue(); + PressEnterToContinue(debug); return OK; } \ No newline at end of file diff --git a/VisualC++/CourseBook/0610_PowerSet/PowerSet-main.c b/VisualC++/CourseBook/0610_PowerSet/PowerSet-main.c index 1f53d6a..9ccd90d 100644 --- a/VisualC++/CourseBook/0610_PowerSet/PowerSet-main.c +++ b/VisualC++/CourseBook/0610_PowerSet/PowerSet-main.c @@ -9,7 +9,7 @@ int main(int argc, char* argv[]) { printf(" A ...\n"); CreatePowerSet(&A, "TestData_A.txt"); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" PrintPowerSet \n"); @@ -17,7 +17,7 @@ int main(int argc, char* argv[]) { printf(" A = "); PrintPowerSet(A); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" GetPowerSet \n"); @@ -32,7 +32,7 @@ int main(int argc, char* argv[]) { printf(" ȡݼеĸӼ...\n"); GetPowerSet(1, A, B); } - PressEnterToContinue(); + PressEnterToContinue(debug); return OK; } diff --git a/VisualC++/CourseBook/0611_NQueens/NQueens-main.c b/VisualC++/CourseBook/0611_NQueens/NQueens-main.c index 2108189..ea655b6 100644 --- a/VisualC++/CourseBook/0611_NQueens/NQueens-main.c +++ b/VisualC++/CourseBook/0611_NQueens/NQueens-main.c @@ -8,21 +8,21 @@ int main(int argc, char* argv[]) { printf("ʼһ %2d * %-2d Ŀ...\n", N, N); InitChessBoard(); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" ShowChessBoard \n"); { printf("չʾǰеĻʺ󲼾...\n"); ShowChessBoard(); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Trial \n"); { printf(" %d ʺĸ...\n", N); Trial(1, N); } - PressEnterToContinue(); + PressEnterToContinue(debug); return OK; } diff --git a/VisualC++/CourseBook/CourseBook.sdf b/VisualC++/CourseBook/CourseBook.sdf index b01738311ca7b16e94a6799a0be4b303d246e715..82700e812a20abd481e0b43fdeb5dc4b927711ff 100644 GIT binary patch delta 29977 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 delta 23180 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 F{|~89eg6Oe diff --git a/VisualC++/CourseBook/CourseBook.suo b/VisualC++/CourseBook/CourseBook.suo index 2e378534cfdb4cbd5252cd77ef9b5ee470e339d9..baaeb6bda707f712d48212c49c85d1220d13a12d 100644 GIT binary patch delta 5997 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\n")); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" SubString \n"); { @@ -122,7 +122,7 @@ int main(int argc, char* argv[]) { printf(" Sub = "); StrPrint_4_21(Sub); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" Concat \n"); @@ -137,7 +137,7 @@ int main(int argc, char* argv[]) { printf(" Tmp = "); StrPrint_4_21(Tmp); } - PressEnterToContinue(); + PressEnterToContinue(debug); return 0; } diff --git a/VisualC++/ExerciseBook/06.56-06.58/06.56-06.58.c b/VisualC++/ExerciseBook/06.56-06.58/06.56-06.58.c index 4cb0485..428528b 100644 --- a/VisualC++/ExerciseBook/06.56-06.58/06.56-06.58.c +++ b/VisualC++/ExerciseBook/06.56-06.58/06.56-06.58.c @@ -72,7 +72,7 @@ int main(int argc, char* argv[]) { printf(" ԷAlgo_6_56У"); PreTraverse(Thr); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" 6.57 ֤...\n"); @@ -92,7 +92,7 @@ int main(int argc, char* argv[]) { printf(" ԷAlgo_6_57ĺУ"); PosTraverse(Thr); } - PressEnterToContinue(); + PressEnterToContinue(debug); printf(" 6.58 ֤...\n"); @@ -134,7 +134,7 @@ int main(int argc, char* argv[]) { printf(" ɺȫΪ"); InOrderTraverse_Thr(Thr, PrintElem); } - PressEnterToContinue(); + PressEnterToContinue(debug); } diff --git a/VisualC++/ExerciseBook/ExerciseBook.sdf b/VisualC++/ExerciseBook/ExerciseBook.sdf index 219c0de8b32667fc0531605a3b08930334c66819..b416fe932cd07053cc50f6235f5fb698c4795450 100644 GIT binary patch delta 8389 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 delta 9706 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 diff --git a/VisualC++/ExerciseBook/ExerciseBook.suo b/VisualC++/ExerciseBook/ExerciseBook.suo index 8f1085f0ff1fb1744ffccaa496953e82a3cbd24b..52478040633361ca9478c6c1b6c5010b0a530142 100644 GIT binary patch delta 7310 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 delta 7406 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 aTa=&caFbI;o%zf`=U)@PNd5tF*!W+O-(wE| diff --git a/VisualC++/Status/Status.c b/VisualC++/Status/Status.c index 4d182b3..7a1a1cf 100644 --- a/VisualC++/Status/Status.c +++ b/VisualC++/Status/Status.c @@ -2,6 +2,11 @@ #include #include // ṩva_listva_startva_argva_end #include // ṩisprintԭ +#include "Status.h" + +/* ȫֱ*/ +Boolean debug = FALSE; // ǷʹdebugģʽʱΪTRUEʱΪFALSE(޸debugֵһҪɾ̬) + /* * Զ¼뺯ڴļfpжȡʽ @@ -135,20 +140,17 @@ int ReadData(FILE* fp, char* format, ...) { } // »سԼ -void PressEnterToContinue() { - int debug = 1; - +void PressEnterToContinue(Boolean debug) { fflush(stdin); - printf("\nPress Enter to Continue..."); - - // ڲԽ׶ʱdebug=1ԶӻУڲ + // ڲԽ׶ʱdebug=TRUEֶ뻻УԱóͣ۲ÿһ if(debug) { - printf("\n"); - - // ʱdebug=0ֶ뻻Уóͣ۲ÿһ - } else { + printf("\nPress Enter to Continue..."); getchar(); + + // ʱdebug=FALSEԶӻУֱӳ + } else { + printf("\n"); } fflush(stdin); diff --git a/VisualC++/Status/Status.h b/VisualC++/Status/Status.h index d578daf..33d5abf 100644 --- a/VisualC++/Status/Status.h +++ b/VisualC++/Status/Status.h @@ -33,12 +33,14 @@ typedef int Status; /* */ typedef int Boolean; +/* ȫֱ*/ +extern Boolean debug; // Ƿʹdebugģʽ // ȡ int ReadData(FILE* fp, char* format, ...); // »سԼ -void PressEnterToContinue(); +void PressEnterToContinue(Boolean debug); // ͣһʱ䣬timeʱ void Wait(long time); diff --git a/VisualC++/Status/Status.lib b/VisualC++/Status/Status.lib index 0669beea0ed3106098b9dc41048c9586feb47df2..27e2d8e2e7ca22c0b15b112fc49ef9e2cd733a74 100644 GIT binary patch delta 3783 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 PZ)ZQhr7ZT%10u-)f4Pke?l?4u1PA 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 C$1jlp delta 4333 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 Z@i*U8n9a&+2vjk1a-pdA<|Ar0i~w9^q=x_i delta 444 zcmZn&Xb9P0!z3ucz`!5~#KJ)Q@Bjb*|277$XPlV8GKs~9k$18pi#*?hKJMD@r>-(G z163Rlnq0+lj)M)z1giZ%`67$TzBLWm)M-tpz!tKw@3$~XJNqF)Xz5pH`pa3_L z;N}wk3rsv9<3y1}CzlBM^D?pmMYxbfzXdd*s`|9z{tQbKDf{)v$!M%%ATyF1uFpCHP;n$d8