|
이영우 님이 쓰신 글 :
: 소스에 추가된 3곳을 보십셔..
:
: : #include <stdio.h>
: : #include <stdlib.h>
: :
: : /*전 처리문 끝*/
: :
: : #define MAX 15
: : struct data{
: : char name[MAX];
: : int age;
: : char phone[MAX];
: : };
: : struct data list[100];
: :
: : main()
: : {
: : FILE *fp;
: : int panbul,ctr,result;
: : printf("====>주소록 프로그램<====\n");
: : printf("몇명의 데이터를 입력할것 입니까?\n");
: : scanf("%d",&panbul);
:
: 고칠곳:여기에 fflush(stdin); 추가
:
: :
: : for(ctr=0;ctr<=panbul;ctr++){
:
: 이상한곳:ctr<= : =이 들어가서 실제 panbul보다 1번더 입력을 받습니다.
:
: : printf("\n %d 번째 사람의 이름을 입력하세요",ctr);
: : gets(list[ctr].name);
: :
: : printf("\n %d 번째 사람의 나이를 입력하세요",ctr);
: : scanf("%d",list[ctr].age);
:
: 고칠곳:여기에도 fflush(stdin); 추가
:
: : printf("\n %d 번째 사람의 전화를 입력하세요",ctr);
: : gets(list[ctr].phone);
: : }
: :
: :
: :
: : if(NULL==(fp=fopen("juso.txt","a"))){
: : printf("파일을 여는데 실패하였습니다.\n");
: : exit(-1);
: : }
: : else{
: : printf("파일을 열었습니다.\n");
: : for(ctr=0;ctr<=panbul;ctr++){
: : fprintf(fp,"%s\n",list[ctr].name);
: : fprintf(fp,"%d\n",list[ctr].age);
: : fprintf(fp,"%s\n",list[ctr].phone);
: : }
: : if((result=fclose(fp))){
: : printf("\n파일을 닫는데 실패 하였습니다.");
: : }
: : else{
: : printf("\n파일을 닫았습니다.");
: : }
: :
: :
: : }
: : return 0;
: : }
: :
: :
|