void FindMember(){ int id; char buf[20]; Member *m; printf("\n\n\n\t\t\t Find Member"); while(1){ printf("\n\n(Enter '-1' to return to main menu.)"); printf("\nEnter member ID: "); if(fgets(buf, 5, stdin) != NULL){ if(strcmp(buf, "-1\n") == 0) return; if((id = atoi(buf)) == 0){ printf("Error occurred\n"); sleep(1); return; } m = SearchMemberById(memRoot, id); if(m == NULL){ printf("Member not found. Try again.\n"); continue; } printf("\n\n\t\t\t Member found"); printf("\n\n%25s %5s %22s\n", "Name", "ID", "Borrowed Book IDs"); printf("-----------------------------------------------------------\n"); PrintMember(m); printf("-----------------------------------------------------------\n"); } } }
void PrintMembers(Member *l){ if(l != NULL){ PrintMembers(l->left); PrintMember(l); PrintMembers(l->right); } }
void vPrintMember(LINKEDLIST* list){ NODE * pStart = list->pTop; while (pStart) { PrintMember(pStart); pStart = pStart->pNext; } }
void SearchMember(LINKEDLIST* list){ char temp[1024] = { ' ' }; printf("찾을 값 : "); gets_s(temp, sizeof(temp)); fflush(stdin); NODE * pFindFlag = SSearchName(list, temp); if (pFindFlag == NULL){ printf("그런거 없다."); return; } PrintMember(pFindFlag); }
void SearchMember(LINKEDLIST* list){ char temp[1024] = { ' ' }; printf("ãÀ» ȸ¿øÀÇ À̸§ : "); gets_s(temp, sizeof(temp)); fflush(stdin); NODE * pFindFlag = SSearchName(list, temp); if (pFindFlag == NULL){ printf("ÀÏÄ¡Çϴ ȸ¿øÀÌ ¾ø½À´Ï´Ù.\n"); return; } PrintMember(pFindFlag); }
void DeleteMember(int m_id){ int id; char buf[20]; Member *m; printf("\n\n\n\t\t\t Delete Member"); while(1){ printf("\n\n(Enter '-1' to return to main menu.)"); printf("\nEnter member ID: "); if(fgets(buf, 5, stdin) != NULL){ if(strcmp(buf, "-1\n") == 0) return; if((id = atoi(buf)) == 0){ printf("Error occurred\n"); sleep(1); return; } m = SearchMemberById(memRoot, id); if(m == NULL){ printf("Member not found. Try again.\n"); continue; } printf("\n\n\t\t\t Member found"); printf("\n\n%25s %5s %22s\n", "Name", "ID", "Borrowed Book IDs"); printf("-----------------------------------------------------------\n"); PrintMember(m); printf("-----------------------------------------------------------\n"); printf("\nAre you sure you want to delete this member? (y/n): "); if(fgets(buf, 5, stdin) == NULL) return; buf[strlen(buf)-1] = '\0'; if(strcmp(buf, "y")==0 || strcmp(buf, "Y")==0 || strcmp(buf, "yes")==0 || strcmp(buf, "Yes")==0 || strcmp(buf, "YES")==0){ DeleteMemberByNode(&memRoot, m); printf("\nMember successfully deleted\n\n"); sleep(1); return; } } } }