이름학번 학년 나이를 키보드로 입력받아 파일에 저장하는 프로그램을 작성하는건데


최대 5명까지 입력할 수 있어야함


근데 디버깅오류뜸


뭐지이거


















#include <stdio.h>
#include <stdlib.h>

#define RECLEAN 36
#define FORMAT "%-20s%-10s%-2s%-4s"
FILE *fp;
void datawrite(int,char *, char *, char *, char *);

int main(void)
{

 char name[20], id[10], year[2], age[4], y;
 int i;

 if ((fopen_s(&fp,"student.dat","wb") != 0)){
  puts("파일읽기에러");
  exit(1);
 }


 for(i=0;i<5;i++){
  printf("이름을 입력하세요:");
  gets_s(name,21);
  printf("학번을 입력하세요:");
  gets_s(id,11);
  printf("학년을 입력하세요:");
  gets_s(year, 3);
  printf("나이를 입력하세요:");
  gets_s(age, 5);
  datawrite(i,&name[21], &id[11], &year[3], &age[5]);
  printf("계속하시겠습니까? Y/N");
  y=getchar();
  fflush(stdin);
  while(y == 'n'|| y == 'N' )
   goto input;
 }

 fclose(fp);
input:
 return 0;

}
void datawrite(int no,char*name, char*id, char*year, char*age)
{
 fseek(fp, RECLEAN *no, SEEK_SET);
 fprintf_s(fp, FORMAT, name, id, year, age);
}