프로그래밍 언어 문제/C
[C언어] 연습문제6
powerdeng
2022. 4. 16. 23:33
[문제]
이름, 나이, 성별을 입력 받아 바이너리 데이터로 friend.bin 파일에 저장하라.
그리고 다시 읽어 들여서 콘솔창으로 출력하는 프로그램을 작성하라.
조건1) 구조체를 사용할 것
조건2) fprintf, fscanf 함수를 사용하지 말 것
[실행결과]
이름, 성별, 나이 순 입력: Jungs M 27
Jungs M 27
[코드]
#include <stdio.h>
typedef struct friend
{
char name[30];
char sex;
int age;
}Friend;
void main()
{
FILE* fp;
Friend myfriend1;
Friend myfriend2;
fp = fopen("friend.bin", "wb");
printf("이름, 성별, 나이 순 입력: ");
scanf_s("%s %c %d", myfriend1.name, 30, &myfriend1.sex, 1, &myfriend1.age);
fwrite((void*)&myfriend1, sizeof(myfriend1), 1, fp);
fclose(fp);
fp = fopen("friend.bin", "rb");
fread((void*)&myfriend2, sizeof(myfriend2), 1, fp);
printf("%s %c %d", myfriend2.name, myfriend2.sex, myfriend2.age);
fclose(fp);
return 0;
}
<참고>
윤성우의 열혈 C 프로그래밍