c언어 수업시간 때 배열과 사용자 지정 함수를 배웠는데 배우다 보니 재미가 붙어서 여러 가지 사용자 정의 함수를 공부하고 배열을 만들어본 결과 전화번호를 기록하고 저장하는데에 관심이 있어서 이 프로젝트를 하게 되었습니다.
김영환 : 프로그램 해석, 사용자 지정 함수 생성 김상현 : 아이디어 생각, 배열 생성 공통 : 알고리즘을 같이 해석하고 모르는 내용이 있으면 서로서로 도와 가면서 알려주고 배웠다. 주요기능 한마디로 주소록이며, 전화번호를 등록, 검색, 수정, 출력하는 주소록이다. 그리고 전체 를 출력할 때 오름차순으로 정렬하여 더욱 깔끔하게 코드 해석을 할 수 있었고, 출력 내용도 복잡하지 않고 간편히 볼 수 있다.
입출력, 동적, 문자열 함수를 사용하고 배열로 이름과 전화번호를 받을 것이고, 함수 지 정을 해준다. 함수는 void 형태로 프로그래밍할 것이다. 그다음은 스위치 문을 이용해 서 메뉴를 만들 것이다. 메뉴는 사용자 지정 함수를 통해 각각 함수 안에서의 프로그래 밍을 통해 전화번호 및 이름을 등록, 검색, 수정, 출력할 수 있게 만들 것이다. 또 한 주소록을 전체 출력할 때 이번 중간고사 때 배운 오름차순정렬 (버블 정렬)을 이용 하 여 주소록을 출력할 것이다.
배열 : 이차원 배열을 사용할 것이고, 이름 데이터와 전화번호 데이터를 저장할 것이다. 사용자 정의 함수 : void 함수로 등록, 검색, 수정, 전체 리스트, 삭제, 메인 등등 여러 가지 옵션을 할 때 사용자 정의 함수로 만들 것이다. 추후 보완사항 기능상에서는 보완할 점이 없지만 배열과 사용자 정의 함수만 사용한다는 것이 단점이 다. 그래서 추후보완 사항에는 문법이 어렵지만 간단한 것으로 프로그램을 짧게 만들 고 싶다. 예로는 구조체, 구조체 배열을 사용하고, 파일을 입출력하여 c언어 말고도 다 른 파일에도 주소록의 정보가 들어가게끔 하고 싶다.
설명 프로그램을 실행할 건지 조건문으로 선택하고 실행을 하지않을 경우 프로그램이 끝난다. 조건이 맞으면 스위치 케이스를 이용해 5가지 목록 중 하나를 선택하여 실행한다. 등록은 이름과 전화번호를 리스트에 등록할 수 있고, 검색은 이름을 검색하여 그에 맞는 전화번호를 확인할 수 있다. 수정은 이름을 검색하여 전화번호를 수정할 수 있고, 전체 리스트 보기는 리스트에 등록된 내용을 출력하고, 종료는 프로그램을 종료 한다.
프로그램을 처음에 실행했을 때 전화번호 관리 프로그램을 실행 할 것인지 하지 않을 것인지 결정할 수 있게 했다. 활용 가능성 여러 가지 전화번호를 저장할 때 헷갈리지 않게 이름과 함께 저장할 수 있어 편함. 전화번호를 삭제하지 않고 수정할 수 있어 편리하다. 주소록이 있기 때문에 활용가능성은 없지만 프로젝트로써는 충분한 활용가능성이 있다.
삭제를 하는 함수, 오름차순으로 리스트를 출력하는 함수를 만들 때 어려움을 겪었는데 인터넷을 통해 여러 가지 방법을 찾아봤지만 포인터와 구조체를 사용해야되서 구현하기 어려웠었다. 또 전화번호를 등록할 때 전화번호의 0이 있을 때 switch문에 겹치는 현상 이 있어 고치는데 힘들었었다.
전화번호를 등록할 때 0이 switch문에 겹치는 현상을 해결하는 방법과 출력을 먼저 할 때 데이터가 없어 데이터가 없다고 출력하는 방법 등을 알 수 있었다. 이 활동을 통해 함수가 어려웠는데 여러 가지 함수를 만들어 보며 사용자 지정 함수를 보다 쉽게 이해 할 수 있었다. 또 복잡하지 않게 코딩을 해도 프로그램을 만들 수 있다 는 걸 알게 되었고 프로그램을 만드는 활동이 재밌고 흥미있다는 걸 알게 되었다.