Bitset::Bitset(int entries) { this->arreglo=new mybyte[entries/8+1]; this->MAX=entries; for(int i=0;i<entries;i++)deleteMember(i); cuantos=0; }
void deleteMember(Member* list) { char buf[10]; int i, j; char input; system("cls"); printf("================================================================================"); printf(" 회원 정보 삭제 메뉴\n"); printf("================================================================================\n"); printf("\n\n\n\n\n 삭제할 회원의 ID Number 입력 : "); gets(buf); for (i = 0; i < MAX; i++) // 입력한 ID Number를 가진 구조체 찾기 { if (list[i].ID == atoi(buf) && atoi(buf) != 0)// atoi함수에 문자가 들어가면 0을 출력하기 때문 break; } if (i == MAX) { printf("\n\n\n\n\n\n\n\n\n\n\n\n\n\n 메인페이지로 이동 ( H ) error : 일치하는 회원이 없습니다."); input = _getch(); if (input == 'h' || input == 'H' || input == 'ㅗ') return; else deleteMember(list); return; } printf("\n\n\n\n\n\n\n\n\n\n\n\n\n 정말로 삭제하시겠습니까? ( Y / N )\n"); while (1) { input = _getch(); if (input == 'y' || input == 'Y' || input == 'ㅛ') { for (; i < MAX; i++) { list[i] = list[i + 1]; } printf(" 입력하신 회원정보의 삭제가 완료되었습니다."); changeOrNot++; _getch(); return; } else if (input == 'n' || input == 'N' || input == 'ㅜ') { printf(" 회원정보 삭제가 취소되었습니다."); _getch(); return; } else printf("\a"); } }
void mainPage(Member *list) { char input; while (1) { system("cls"); printf("\n\n\n\n\n\n\n\n"); printf(" ================================================\n"); printf(" 1.회원보기\n"); printf(" 2.회원등록\n"); printf(" 3.회원수정\n"); printf(" 4.회원삭제\n"); printf(" 5.회원검색\n"); printf(" 6.변경사항 저장\n"); printf(" 7.종료\n"); printf(" ================================================\n"); input = _getch(); if (48 < input && 56 > input) // 문자'1'의 아스키코드는 49 { switch (input) { case 49: printPersonalInformation(list); break; case 50: addMember(list); break; case 51: editMember(list); break; case 52: deleteMember(list); break; case 53: searchMember(list); break; case 54:; saveMember(list); break; case 55:; return; } } else printf("\a"); // 1~7 이외의 값 입력시 beep음 출력 } return; }
/** * FUNCTION NAME: updateLeader * * DESCRIPTION: Update Leader information */ void Member::updateLeader(Address leaderAddr, std::string leaderName) { if (getLeaderAddress().compare(leaderAddr.getAddress()) == 0) return; std::cout << "NOTICE " << leaderEntry->getUsername() << " left the chat or crashed." << std::endl; std::string leader_ip_port = leaderAddr.getAddress(); leaderEntry = new MemberListEntry(leader_ip_port, leaderName); std::cout << "NOTICE " << getLeaderName() << " is the new leader" << std::endl; // New leader should not be in the list deleteMember(leader_ip_port); #ifdef DEBUGLOG std::cout << "\tNew Leader: " << getLeaderName() << std::endl; #endif }
void options() { int option; printf("\nPress 1 to add a new member to the list.\n"); printf("Press 2 to search for a member by name.\n"); printf("Press 3 to remove a member from the list.\n"); printf("Press 4 to destroy the current list\n"); printf("Press 5 to exit the program.\n"); scanf("%d", &option); switch (option) { case 1: addMember(); break; case 2: searchMemberCall(); break; case 3: deleteMember(); break; case 4: destroyList(); break; case 5: printf("You have exited the program."); break; default: printf("You have entered a faulty option, please try again.\n"); options(); break; } }
//회원 검색 void searchMember() { int i = 0; int choiceUser = 0; int selectMode = 0; int index = saveIndexNumber(); char inputsignNumber[80]; MemberInfo save[100]; //회원 정보 불러오기 FILE *fp; //파일 열기,에러 체크 if ((fp = _fsopen("memberInfo.txt", "r", _SH_DENYNO)) == NULL) { puts("memberInfo.txt 열기 샐패"); return; } //용도에 맞게 쓰기 fread(&save, sizeof(MemberInfo), index, fp); //파일 닫기 fclose(fp); printf("찾으실 회원의 주민등록번호 앞 6자리를 입력 하세요\n"); inputString(inputsignNumber); /*if (strlen(inputsignNumber) != 6) { printf("주민등록번호 앞자리는 6자리 입니다."); Sleep(1000); system("cls"); printUser(index); }*/ system("cls"); //입력받은 주민 등록 번호와 저장된 주민등록 번호가 일치 하면 화면에 출력 for (i = 0; i < index; i++) { if (strcmp(inputsignNumber, save[i].signNumber) == 0) { printf("회원 번호 : %d\n", save[i].id); printf("\t이름 : %s\n", save[i].name); printf("\t주소 : %s\n", save[i].address); printf("\t주민등록번호 : %s\n", save[i].signNumber); printf("\t휴대폰 번호 : %s\n", save[i].phoneNumber); printf("\t이메일 : %s\n", save[i].email); //printf("\t빌린책 : %d\n", save[i].bookList); } } printf("수정 또는 삭제하실 회원 번호를 입력 하세요\n"); choiceUser = inputNumber(); system("cls"); printf("수정 또는 삭제를 선택 하세요\n"); printf("1. 수정\n"); printf("2. 삭제\n"); printf("0. 이전 메뉴로\n"); printf("선택 : "); selectMode = inputNumber(); system("cls"); //메뉴 선택에 따라 기능 if (selectMode == 1) { fixMember(choiceUser, index); } if (selectMode == 2) { deleteMember(choiceUser, index); } if (selectMode == 0) { return; } }