쉽게풀어쓴 C Express 16장 프로그래밍 문제 6, 9, 12번 문제입니다
- 최초 등록일
- 2011.11.26
- 최종 저작일
- 2011.11
- 7페이지/ 압축파일
- 가격 1,000원
소개글
16장 6번 9번 12번 문제 풀어서 올려요
목차
16장 - 6번 다음과 같이 학생들의 교과목 성적이 저장되어 있는 텍스트 파일을 읽어서 성적의 평균을 구하여 파일에 출력하는 프로그램을 작성하라.
16장 - 9번 사용자로부터 다음과 같은 형식으로 사용자의 번호, 이름, 전화번호, 이메일 주소 등을 입력받아서 이진 파일로 저장한다. 입력이 끝나면 사용자로부터 번호를 입력받아서 그 번호에 해당하는 전화번호를 출력하는 프로그램을 작성하라.
16장 - 12번 사용자로부터 이름과 전화번호를 입력받아서 먼저 구조체 변수에 저장한 후에 이 구조체 변수를 이진 파일 directory.dat에 저장하는 프로그램을 작성하라. 새로운 데이터는 모두 파일의 끝에 추가되도록 프로그램을 작성하라.
본문내용
16장 - 6번 다음과 같이 학생들의 교과목 성적이 저장되어 있는 텍스트 파일을 읽어서 성적의 평균을 구하여 파일에 출력하는 프로그램을 작성하라.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct data {
int num;
char name[10];
int kor;
int eng;
int mat;
};
void main()
{
struct data inArry[50];
int i=0,number;
double avg[10];
char input[] = "input_homework.txt", output[] = "output_homework.txt";
FILE *f1, *f2;
if((f1 = fopen(input, "r")) == NULL){
printf("파일이 열리지 않습니다.\n");
exit(1);
};
if((f2 = fopen(output, "w+")) == NULL){
printf("파일이 열리지 않습니다.\n");
exit(1);
};
while(!feof(f1)){
fscanf(f1, "%s %d %d %d", &inArry[i].name, &inArry[i].kor, &inArry[i].eng,&inArry[i].mat);
avg[i] = (double)(inArry[i].kor+inArry[i].eng+inArry[i].mat)/3;
i++;
}
number = i-1;
printf(" 이름 평균\n");
fprintf(f2," 이름 평균\n");
for(i=0; i<number; i++)
{
fprintf(f2,"%s %.2lf\n", inArry[i].name, avg[i]);
printf("%s %.2lf\n", inArry[i].name, avg[i]);
참고 자료
없음
압축파일 내 파일목록
16장 6,9,12번제 문제.hwp
K-1.jpg