Hisworld.tistory.com
The hisWorld
(140)
hisworld_new
(0)
hisOld
(138)
Android
(7)
Computer Vision
(18)
JAVA
(4)
C/C++
(26)
열혈강의 C
(32)
TCP/IP socket
(12)
WinAPI
(16)
System Programming
(0)
etc
(23)
Plan
(0)
hisWorld
(0)
hiStory
(0)
hiStudy
(0)
hiSnap
(0)
홈
태그
미디어로그
위치로그
방명록
Windows Live Messenger
winapi
Join C
대학생 공모전
The Turing test page
훈스닷넷
C/C++ Reference
WIKI
/
/
블로그 내 검색
열혈강의 C 도전 프로그래밍 FOUR - 7
URUZ-7
2008. 4. 27. 10:17
2008. 4. 27. 10:17
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <conio.h> #define DATA_MAX 50 typedef struct tagData PHONE; struct tagData { char name[20]; int number; int flag; }; PHONE person[DATA_MAX]; void fn_sel(char idx); void fn_insert(); void fn_delete(); void fn_search(); void fn_printall(); void fn_exit(); int main(void) { char idx; int i; FILE *fp; if( (fp=fopen("data.txt","rb")) == NULL) { fprintf(stderr,"File Open Error !!\n"); exit(1); } else { for(i=0; i<DATA_MAX; i++) { fread(person[i].name,sizeof(char),20,fp); fread(&person[i].number,sizeof(int),1,fp); fread(&person[i].flag,sizeof(int),1,fp); } } fclose(fp); do { system("cls"); fflush(stdin); printf("---------- MENU ---------\n"); printf(" 1.Insert\n"); printf(" 2.Delete\n"); printf(" 3.Search\n"); printf(" 4.Print All\n"); printf(" 5.Exit"); printf("\n"); printf("Choose the item : "); idx = getch(); fn_sel(idx); }while(idx!=5); return 0; } void fn_sel(char idx) { switch(idx) { case '1': fn_insert(); break; case '2': fn_delete(); break; case '3': fn_search(); break; case '4': fn_printall(); break; case '5': fn_exit(); break; default : { system("cls"); printf("잘못된 입력 입니다.\n"); system("pause"); } } return; } void fn_insert() { char temp[20]; int i; for(i=0 ; i<DATA_MAX; i++) { if(person[i].flag==0) { fflush(stdin); printf("\n[INSERT]\n"); printf("Input Name : "); gets(temp); strcpy(person[i].name,temp); printf("Input Tel Number : "); scanf("%d",&person[i].number); printf("\n"); printf("---------->Data Inserted\n"); system("pause"); person[i].flag=1; return; } else continue; } return; } void fn_delete() { int i; char temp[20]; fflush(stdin); printf("\n[DELETE]\n"); printf("Input Name : "); gets(temp); for(i=0; i<DATA_MAX; i++) { if(person[i].flag==1) if(!strcmp(temp,person[i].name)) { person[i].flag=0; printf("\n"); printf("---------->Data Deleted\n"); system("pause"); return; } } printf("일치하는 이름이 없습니다.\n"); system("pause"); } void fn_search() { int i; char temp[20]; fflush(stdin); printf("\n[SEARCH]\n"); printf("Input Name : "); gets(temp); for(i=0; i<DATA_MAX; i++) { if(person[i].flag==1) if(!strcmp(temp,person[i].name)) { printf("Nmae : %s / Tel : %d\n",person[i].name,person[i].number); system("pause"); return; } } printf("일치하는 이름이 없습니다.\n"); system("pause"); } void fn_printall() { int i; fflush(stdin); printf("\n[Print All Data]\n"); for(i=0; i<DATA_MAX; i++) { if(person[i].flag==1) printf("Nmae : %s / Tel : %d\n",person[i].name,person[i].number); } system("pause"); } void fn_exit() { int i; FILE *fp; if( (fp=fopen("data.txt","wt")) == NULL) { fprintf(stderr,"File Open Error !!\n"); exit(1); } else { for(i=0; i<DATA_MAX; i++) { fwrite(person[i].name,sizeof(char),20,fp); fwrite(&person[i].number,sizeof(int),1,fp); fwrite(&person[i].flag,sizeof(int),1,fp); } } fclose(fp); exit(0); }
invalid-file
공유하기
게시글 관리
구독하기
Hisworld.tistory.com
+ Recent posts
Powered by
Tistory
, Designed by
wallel
Rss Feed
and
Twitter
,
Facebook
,
Youtube
,
Google+
티스토리툴바