본문 바로가기

프로그래밍 언어 문제/C

[C언어] 연습문제6

[문제]

이름, 나이, 성별을 입력 받아 바이너리 데이터로 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 프로그래밍

'프로그래밍 언어 문제 > C' 카테고리의 다른 글

[C언어] 연습문제4  (0) 2022.05.05
[C언어] 연습문제5  (0) 2022.04.20
[C언어] 연습문제7  (0) 2022.04.15
[C언어] 연습문제8  (0) 2022.04.13
[C언어] 연습문제9  (0) 2022.04.13