반응형
다음과 같은 형식의 성적 데이터를 읽어 들이는 C언어 코드입니다.
정재욱 100 100 100 이순신 90 91 92 홍길동 81 82 83 |
C언어 코드
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
FILE* fp;
char name[20];
int a, b, c, tot;
if ((fp = fopen("score.txt", "r")) == NULL)
{
printf("파일을 열 수 없습니다.\n");
return -1;
}
while (!feof(fp))
{
fscanf(fp, "%s %d %d %d", name, &a, &b, &c);
tot = a + b + c; // 총점 구하기
printf("%s\t%3d %3d %3d %3d\n", name, a, b, c, tot);
}
fclose(fp);
return 0;
}
위 코드를 fscanf_s 함수를 사용하는 코드로 수정했습니다.
비주얼스튜디오(Visual Studio)에서 사용하는 형식입니다.
// #define _CRT_SECURE_NO_WARNINGS -- 이 코드는 필요 없습니다.
#include <stdio.h>
int main()
{
FILE* fp;
char name[20];
int a, b, c, tot;
errno_t err;
err = fopen_s(&fp, "score.txt", "r"); // fopen_s
if(err != 0)
{
printf("파일을 열 수 없습니다.\n");
return -1;
}
while (!feof(fp))
{
fscanf_s(fp, "%s %d %d %d", name, 10, &a, &b, &c); // fscanf_s, %s다음에 문자열 길이
tot = a + b + c;
printf("%s\t%3d %3d %3d %3d\n", name, a, b, c, tot);
}
fclose(fp);
return 0;
}
C++ 코드가 필요하면 아래 링크 클릭 ↙↙↙
https://gonyzany.tistory.com/174
반응형
'C_C++' 카테고리의 다른 글
(C++) bool 변수의 값을 "true", "false"로 출력하기 (0) | 2022.11.26 |
---|---|
(C언어) sprintf() 함수 (0) | 2022.11.25 |
(C++) 성적 데이터 파일 읽기 ifstream (0) | 2022.11.23 |
(C언어) 구조체를 이진파일에 저장하고 읽어오기 fread fwrite (0) | 2022.11.22 |
(C언어) 문자열 뒤집기 (0) | 2022.11.22 |