diff --git a/Project2/Debug/Project2.log b/Project2/Debug/Project2.log index 77f8b0b..e69de29 100644 --- a/Project2/Debug/Project2.log +++ b/Project2/Debug/Project2.log @@ -1,8 +0,0 @@ - sq_list.c -C:\code\lencode\Project2\sq_list.c(94,37): warning C4028: 形参 2 与声明不同 -C:\code\lencode\Project2\sq_list.c(100,9): warning C4033: “locate_list”必须返回值 -C:\code\lencode\Project2\sq_list.c(104,27): warning C4047: “==”:“int”与“int *”的间接级别不同 -C:\code\lencode\Project2\sq_list.c(110,9): warning C4033: “locate_list”必须返回值 -C:\code\lencode\Project2\sq_list.c(164,34): warning C4133: “函数”: 从“sq_list *”到“int *”的类型不兼容 -C:\code\lencode\Project2\sq_list.c(114,1): warning C4715: “locate_list”: 不是所有的控件路径都返回值 - Project2.vcxproj -> C:\code\lencode\Project2\Debug\Project2.exe diff --git a/Project2/Debug/Project2.tlog/CL.read.1.tlog b/Project2/Debug/Project2.tlog/CL.read.1.tlog index 4726291..e69de29 100644 Binary files a/Project2/Debug/Project2.tlog/CL.read.1.tlog and b/Project2/Debug/Project2.tlog/CL.read.1.tlog differ diff --git a/Project2/Debug/Project2.tlog/CL.write.1.tlog b/Project2/Debug/Project2.tlog/CL.write.1.tlog index 5f7512d..e69de29 100644 Binary files a/Project2/Debug/Project2.tlog/CL.write.1.tlog and b/Project2/Debug/Project2.tlog/CL.write.1.tlog differ diff --git a/main.c b/main.c index ebfdb48..347e136 100644 --- a/main.c +++ b/main.c @@ -10,10 +10,10 @@ int main(void) sq_list* L = init_sq_list(); sq_list* N = init_sq_list(); - N->data[0] = 11; - N->data[1] = 12; - N->data[2] = 13; - + for (int i = 1; i <= 3; i++) + { + N->data[i - 1] = i+10; + } for (int i = 1; i <= 10; i++) { L->data[i - 1] = i; @@ -22,10 +22,10 @@ int main(void) L->length = 10; print_sq_list(N); print_sq_list(L); - printf("----------------------------------"); - mer_ge_sq_list(L,N); - print_sq_list(L); - printf("%d", L->length); + merge_sq_list(N,L); + print_sq_list(N); + printf("L->length:[%d]\n", N->length); printf("Hello World!\n"); + system("pause"); return 0; } diff --git a/sq_list.c b/sq_list.c index ef00d8d..9ff8dfc 100644 --- a/sq_list.c +++ b/sq_list.c @@ -73,8 +73,10 @@ void insert_sq_list(sq_list* list, int pos, int value) // ӡ void print_sq_list(sq_list* list) { + printf("["); for (int i = 0; i < list->length; i++) printf("%d ", list->data[i]); + printf("]"); printf("\n"); } @@ -129,23 +131,25 @@ void merge_sq_list(sq_list* list_1, sq_list* list_2) for (int i = 0; i < list_2->length; i++) { - for (int j = 0; j < list_1->length; j++) + for (int j = 0; j < list_1->length; j++) { if (list_1->data[j] != list_2->data[i]) - continue; - else if (list_1->data[j] == list_2->data[i]) { - flog++; break; - } - else - { - list_1->data[list_1->length] = list_2->data[i]; - list_1->length++; + if (j == list_1->length -1) + { + list_1->data[list_1->length] = list_2->data[i]; + list_1->length++; + flog++; + } + else + continue; } } } - printf("%dͬ %dͬ\n", flog, list_2->length - flog); + printf("----------------------------------\n"); + printf("%dͬ %dͬ\n", flog, list_2->length - flog); + printf("----------------------------------\n"); } //if (list_1->data[j] != list_2->data[i])