도서 관리 프로그램에서는 장르별로 도서를 관리하게 할거예요. 따라서 사용자 정의 형식으로 프로그램, 장르, 도서로 역할을 구분하여 정의하기로 해요. 클래스 다이어그램에서는 프로그램에 정의할 형식을 클래스로 표시하고 클래스 간의 관계를 추가로 표시해요. 프로그램은 장르들의 집합체이고 장르는 도서의 집합체죠. 이와 같은 관계를 집합 관계(실선과 빈 다이아몬드)라 불러요.이 외에도 클래스 간의 관계는 직접 연관 관계, 연관 관계, 집합 관계, 일반화 관계, 의존 관계, 실현 관계가 있어요. C++, Java, C# 처럼 OOP 프로그램에서는 이와 같은 관계에 어울리는 문법이 있어요. 여기에서는 이들에 관한 설명은 하지 않을게요. 도서는 Book 구조체로 정의할게요. 도서 데이터에는 제목, 저자, 도서 번호를 ..