파일 입출력 질문 있습니다.
#include
int main()
{
int num=0;//번호 select
char object[25]="";//단어 입력 변수
char enter[2]="\n";//개행
FILE *word;//파일 입출력을 하기 위한 설정
//목차 번호 누르고 enter
printf("*Please input only small letter*\n");
printf("1. Animal\n");
printf("2. Transportation\n");
printf("3. Fruit\n");
printf("4 is quit system\n");
while(1)//무한 loop
{
printf("Input the category number : ");
scanf("%d",&num);//num 입력
switch(num){
case 1:
word = fopen("Animal.txt","a+");//a+은 읽기 쓰기 전부 가능한 모드로 open
printf("Input the correct word : ");
scanf("%s",object);//scanf로 먼저 object에 문자열을 overlap
fputs(object,word);//메모장에 입력
fputs(enter,word);//메모장에 개행 입력해서 한줄에 한단어씩 입력되게 하는 것.
fclose(word);
break;
case 2:
word = fopen("Transportation.txt","a+");
printf("Input the correct word : ");
scanf("%s",object);
fputs(object,word);
fputs(enter,word);
fclose(word);
break;
case 3:
word = fopen("Fruit.txt","a+");
printf("Input the correct word : ");
scanf("%s",object);
fputs(object,word);
fputs(enter,word);
fclose(word);
break;
case 4:
return 0;
default :
printf("You input wrong number. Please ");
break;
}
}
return 0;
}
이게 제 소스코드입니다. 파일 입출력으로 데이터를 메모장에 저장하고 불러오고 싶어서 만들었습니다.
여기서 두가지를 추가로 업데이트 하고 싶은데요
첫 번째는 메모장 입력할 때 중복 걸러내기 입니다. 즉 같은 단어를 또 입력하면 프로그램상으로 처리해서 같은 단어가 메모장에 재입력 되는것을 방지시키는 기능이구요.
두 번째는 프로그램을 한번 실행시킨 후 생성된 메모장 란에는 한줄에 단어 한 개가 입력되어있습니다.
그래서 1번이라고 입력하면 첫번째 줄에 있는 단어를 출력하고 2를 누르면 두번째 줄에 있는 단어를 출력하는 코딩을 하고 싶습니다.
파일 입출력에 대해 잘 아시는 분들은 지식을 나누어 주시면 감사하겠습니다. 부족한 저좀 가르쳐 주세요^^
참고해보세요.
자동 정렬이 되서. 입력된 순서대로는 출력이 안되네요. ㅇ_ㅇ;;
----------------------------------------------------------------------------
젊음'은 모든것을 가능하게 만든다.
매일 1억명이 사용하는 프로그램을 함께 만들어보고 싶습니다.
정규 근로 시간을 지키는. 야근 없는 회사와 거래합니다.
각 분야별. 좋은 책'이나 사이트' 블로그' 링크 소개 받습니다. shintx@naver.com
정말 감사합니다!
정말 감사합니다!
댓글 달기