fprintf, fscanf함수를 이용한 구구단 프로그램
Programming/C 2013. 2. 15. 01:29 |#include<stdio.h>
main()
{
char c1, c2;
int state;
int i,j;
int a, b, c;
/* 파일의 개방 */
FILE* file = fopen("c:\\test.txt", "wt");
if(file == NULL)
{
printf("file open error!\n");
return 1;
}
//fprintf 함수를 이용하여 test.txt에다가 구구단을 쓰게 함.
for(i=2; i<10; i++)
for(j=1; j<10; j++)
fprintf(file, "%d * %d = %d\n", i, j, i*j);
/* 파일의 종결 */
state = fclose(file);
if(state != 0)
{
printf("file close error!\n");
return 1;
}
/* 파일의 개방 */
file = fopen("c:\\test.txt", "rt");
if(file == NULL)
{
printf("file open errer!\n");
return 1;
}
// fscanf 함수를 이용하여 test.txt의 내용을 a,c1,b,c2,c에 받아옴.
for(i=2; i<10; i++)
{
for(j=1; j<10; j++)
{
fscanf(file, "%d %c %d %c %d", &a, &c1, &b, &c2, &c); //file의 내용을 받아서.
fprintf(stdout, "%d %c %d %c %d\n", a, c1, b, c2, c); //모니터로 출력.
}
}
/* 파일의 종결 */
state = fclose(file);
if(state != 0)
{
printf("file close error\n");
return 1;
}
return 0;
}
- fprintf와 fscanf의 형식 -
fprintf(FILE* stream, const char* format, ...)
fscanf(FILE* stream, const char* format, ...)
일반적으로 데이터 입력, 출력의 형식은 일치해야한다.!!!
그리고, 파일을 스무번 개방하면 스무번 모두 꼭 필히 닫아줘야 한다.
'Programming > C' 카테고리의 다른 글
Random Access 입력 및 출력: 파일 위치 지시자(File Position Indication) fseek함수 (0) | 2013.02.15 |
---|---|
파일의 끝을 확인해주는 feof함수의 활용법 (0) | 2013.02.15 |
파일 입력, 출력 ( fopen, fclose ) (0) | 2013.02.15 |
사용자 자료형 enum (0) | 2013.02.15 |
공용체 union (0) | 2013.02.15 |