c언어/c언어 (병원관리)
c언어 병원관리 프로그램
byeol2ing
2017. 9. 11. 14:28
반응형
[문제] 병원에서 환자를 관리하는 C 프로그램을 작성하라. | ||||||||||
1. 프로그램이 제공하는 기능은 다음과 같다. | ||||||||||
1)입원, 2)퇴원, 3)병실 이동, 9)자료 조회 0)종료 | ||||||||||
2. 조회 대상 자료는 다음과 같다. | ||||||||||
1)환자 상세 내역(신상자료, 병실 이동 내역), 2)전체 환자 명단, 3)가용 병실 목록, 4)병실별 환자 명단 | ||||||||||
3. 환자에 관한 자료는 "patient.txt" 파일에 저장되어 있으며, 레코드 구조는 다음과 같다. | ||||||||||
l환자번호|성명|성별|생년월일|휴대폰번호|입원일|병명|병실|주치의|담당간호사|퇴원일 l | ||||||||||
* 환자번호: 년도(4)+일련번호(4) | ||||||||||
* 성별 -> M: 남성, F: 여성 | ||||||||||
* 병명: 환자가 입원한 주된 병명을 문자열로 기록 | ||||||||||
* 병실: 현재의 병실 번호[=층번호(1)+일련번호(2)] | ||||||||||
* 주치의, 담당간호사: 현재의 주치의 및 담당간호사의 직원번호[=년도(4)+일련번호(2))] | ||||||||||
* 퇴원일: 현재 입원 중인 환자는 “xxxx0101”를 기재하고, 퇴원한 환자는 년도(4)+월(2)+일(2). | ||||||||||
4. 병실에 관한 자료는 "room.txt" 파일에 저장되어 있으며, 레코드 구조는 다음과 같다. | ||||||||||
병실번호|병실종류|성별|수용가능인원|현재인원 | ||||||||||
* 병실번호: 층번호(1)+일련번호(2) | ||||||||||
* 병실종류 -> 1: 1인실, 2: 2인실, 3: 3인실, x: 다인실 | ||||||||||
* 성별 -> M: 남성용 병실, F: 여성용 병실 | ||||||||||
* 수용가능인원: 1/2/3 인실은 각각 1/2/3, 다인실인 경우에 최대 수용 가능한 인원수 | ||||||||||
* 현재인원: 현재 당해 병실에 입원 중인 환자의 수 | ||||||||||
5. 병실이동에 관한 자료는 "room_history.txt" 파일에 저장되어 있으며, 레코드 구조는 다음과 같다. | ||||||||||
환자번호|변경일|변경전 병실|변경후 병실 | ||||||||||
* 변경전: 변경 전에 환자가 있던 병실의 번호 | ||||||||||
* 변경후: 변경 후에 환자가 있던 병실의 번호 | ||||||||||
6. 파일에 저장된 자료는 프로그램을 시작할 때 load하고, 프로그램을 종료할 때 save할 것. | ||||||||||
7. 각각의 기능에 대한 처리 시 유의사항 | ||||||||||
1) 입원: 병실, 주치의, 담당간호사를 배정할 것. | ||||||||||
2) 퇴원: 환자의 신상자료를 display한 후에 퇴원일을 입력 받아 처리할 것. | ||||||||||
3) 병실 이동, 의료인 배정: 변경 전의 내용을 보여준 후에 변경할 내용을 입력받고, 변경일은 시스템 상의 | ||||||||||
날짜를 적용할 것 | ||||||||||
4)자료 조회: 작성할 자료를 선택 받고, 자료 작성에 필요한 정보는 입력 받을 것. 예)환자 상세 내역 작성 시 | ||||||||||
환자 번호를 입력 받는다. | ||||||||||
[참고 사항] | ||||||||||
1. main() 함수는 다음의 골격을 참고하라. | ||||||||||
int main(void) | ||||||||||
{ | ||||||||||
// load data from files | ||||||||||
while (1) { | ||||||||||
int menu = getMenu(); | ||||||||||
switch(menu) { | ||||||||||
case CHECK_IN: | ||||||||||
... | ||||||||||
case CHECK_OUT: | ||||||||||
... | ||||||||||
case CHANGE_ROOM: | ||||||||||
... | ||||||||||
case QUERY: | ||||||||||
... | ||||||||||
case EXIT: | ||||||||||
... | ||||||||||
} | ||||||||||
} | ||||||||||
// save data to files | ||||||||||
} | ||||||||||
반응형