*우*
Bronze개인
팔로워0 팔로우
소개
등록된 소개글이 없습니다.
전문분야 등록된 전문분야가 없습니다.
판매자 정보
학교정보
입력된 정보가 없습니다.
직장정보
입력된 정보가 없습니다.
자격증
  • 입력된 정보가 없습니다.
판매지수
전체자료 1
검색어 입력폼
  • [자료구조] [C/C++][자료구조]명함관리 프로그램
    #include #include #include #include #define NAME_SIZE 20#define CORP_SIZE 30#define TEL_SIZE 20#define EMAIL_SIZE 30/* 데이터 구조를 만든다 */typedef struct namecard {char name[NAME_SIZE];char company[CORP_SIZE];char tel[TEL_SIZE];char email[EMAIL_SIZE];struct namecard *prev; // 이전 노드로의 링크struct namecard *next; // 다음 노드로의 링크}card;/* 함수 원형 */void InsertData(card *, char[NAME_SIZE], char[CORP_SIZE], char[TEL_SIZE], char[EMAIL_SIZE]);char DeleteData(card *, card *, char[NAME_SIZE]);char FindData(card *, card *, char[NAME_SIZE]);void PrintData(card *, card *);/* Main */int main(int args, char *argv[]){/* 선언부 */char name[NAME_SIZE], company[CORP_SIZE], tel[TEL_SIZE], email[EMAIL_SIZE];card *head, *tail; /* 리스트의 처음과 끝을 선언 */int count = 0, select, result;/* 리스트의 처음과 끝을 할당 */head = (card *)malloc(sizeof(card));tail = (card *)malloc(sizeof(card));head->next = tail; //머리노드 다음은 꼬리노드head->prev = head; //머리노드 선행은 머리노드tail->prev = head; //꼬리노드 선행은 머리노드tail->next = tail; //꼬리노드 다음은 꼬리노드while(1){/* 메뉴 선택 */do{printf("---- 명함관리 프로그램 ---nn");printf("1. 데이터 입력n");printf("2. 데이터 출력n");printf("3. 데이터 검색n");printf("4. 데이터 삭제n");printf("5. 프로그램 종료nn");printf("원하는 항목은 : ");scanf("%d", &select);} while(select < 1 || select > 5);if (select == 5)break;switch(select){case 1: /* 입력 */printf("n 명 함 입 력 ");printf("n===================");printf("n이 름 : ");scanf("%s", name);printf("n회 사 : ");scanf("%s", company);printf("n전화번호 : ");scanf("%s", tel);printf("n이 메 일 : ");scanf("%s", email);InsertData(tail, name, company, tel, email);count++;break;case 2: /* 출력 */printf("nn");PrintData(head, tail);break;case 3: /* 검색 */printf("nn찾을려는 데이터 : ");scanf("%s", name);result = FindData(head, tail, name);if (result)printf("데이터는 존재합니다!!!n");elseprintf("데이터는 존재하지 않습니다!!!n");break;case 4: /* 삭제 */if (count < 1) /* 데이터가 0개면 삭제하지 않는다 */{printf("더이상 지울 데이터가 없습니다.n");break;}printf("nn삭제할 데이터 : ");scanf("%s", name);result = DeleteData(head, tail, name);if (result){printf("삭제되었습니다.n");count--;}elseprintf("해당되는 데이터가 없습니다!!!n");break;}printf("nn");}return 1;}/* 데이터를 추가한다 */void InsertData(card *tail, char name[NAME_SIZE], char company[CORP_SIZE],char tel[TEL_SIZE], char email[EMAIL_SIZE]){card * data;/* 새 데이터를 넣을 공간을 확보 */data = (card *)malloc(sizeof(card));strcpy(data->name, name);strcpy(data->company, company);strcpy(data->tel, tel);strcpy(data->email, email);/* 리스트 끝에 새 데이터 추가 */tail->prev->next = data;data->prev = tail->prev;data->next = tail;tail->prev = data;}/* 데이터를 삭제한다 */char DeleteData(card *head, card *tail, char name[NAME_SIZE]){card *list = head;/* 데이터를 처음에서 끝까지 검색 */while(list->next != tail){list = list->next;/* 원하는 값이 있으면 */if (strcmp(list->name, name)==0){/* 현재 데이터의 전, 후 데이터를 서로 연결한다 */list->prev->next = list->next;list->next->prev = list->prev;/* 현재 데이터를 지운다 */free(list);return 1;}};return 0;}/* 데이터를 찾는다 */char FindData(card *head, card *tail, char name[NAME_SIZE]){card *list = head;/* 데이터를 처음부터 끝까지 찾는다 */while(list->next != tail){list = list->next;/* 찾았으면 1을 반환 */if (strcmp(list->name, name) == 0) {printf("n|=============================================================|n");printf("n| 이름 | 회사 | 전화 번호 | E-Mail |n");printf("|%8s|%15s|%13s|%22s|n", list->name, list->company, list->tel, list->email);printf("|=============================================================|n");return 1;}};/* 못찾았으면 0을 반환 */return 0;}/* 현재 있는 데이터 출력 */void PrintData(card *head, card *tail){card *list = head;/* 데이터를 처음부터 끝까지 출력한다 */printf("n|=============================================================|n");printf("n| 이름 | 회사 | 전화 번호 | E-Mail |n");
    공학/기술| 2004.05.06| 4페이지| 1,000원| 조회(1,211)
    미리보기
전체보기
해캠 AI 챗봇과 대화하기
챗봇으로 간편하게 상담해보세요.
2026년 05월 02일 토요일
AI 챗봇
안녕하세요. 해피캠퍼스 AI 챗봇입니다. 무엇이 궁금하신가요?
7:17 오전
문서 초안을 생성해주는 EasyAI
안녕하세요 해피캠퍼스의 20년의 운영 노하우를 이용하여 당신만의 초안을 만들어주는 EasyAI 입니다.
저는 아래와 같이 작업을 도와드립니다.
- 주제만 입력하면 AI가 방대한 정보를 재가공하여, 최적의 목차와 내용을 자동으로 만들어 드립니다.
- 장문의 콘텐츠를 쉽고 빠르게 작성해 드립니다.
- 스토어에서 무료 이용권를 계정별로 1회 발급 받을 수 있습니다. 지금 바로 체험해 보세요!
이런 주제들을 입력해 보세요.
- 유아에게 적합한 문학작품의 기준과 특성
- 한국인의 가치관 중에서 정신적 가치관을 이루는 것들을 문화적 문법으로 정리하고, 현대한국사회에서 일어나는 사건과 사고를 비교하여 자신의 의견으로 기술하세요
- 작별인사 독후감