파일입출력으로 저장한게.. 꺠지네요..
MyWay
질문 제목 : 질문 내용 : 아래 소스를 실행시켜서 2번을 눌러서 입력하면 마크에 저장은 되는데 1번을 눌르면 막꺠져서 나오고 마크에 저장되있던것도 이상하게 변해요.. 어떻게 해야하는거죠?
#includestdio.h
#includeconio.h
#includestdlib.h
void main()
{
int a1;
char *z;
file *input, *output;
puts(성적 관리 프로그램에 오신걸 환영합니다.);
puts(할 수 있는 것들);
puts(1. 성적 보기);
puts(2. 성적 관리);
puts(3. 추가);
printf(할 번호를 입력: ); clear: scanf(%d,&a1);
if(a1==1)
{
z=성적 보기;
printf(%s를 선택하셨습니다.\n,z);
file * fp = fopen(mark.txt,w);
file * fo = fopen(result.txt,w);
int avg=0; // 평균
int result=0; // 총합
int kor=0; // 국어
int mat=0; // 수학
int eng=0; // 영어
int soc=0; // 사회
int sci=0; // 과학
char name[10]; // 이름
printf(\n성적 출력\n);
printf(%s 님의 성적입니다. \n국어 성적은 %d점\n수학 성적은 %d점\n영어 성적은 %d점\n사회 성적은 %d점\n과학 성적은 %d점\n총합 %d점\n평균 %d점\n, name, kor, mat, eng, soc, sci, result, avg);
printf(끝났습니다.);
fclose(fp);
fclose(fo);
}
else if(a1==2)
{
z=성적 관리;
printf(%s를 선택하셨습니다.\n,z);
file * fp = fopen(mark.txt,w);
file * fo = fopen(result.txt,w);
int a;
int avg=0; // 평균
int result=0; // 총합
int kor=0; // 국어
int mat=0; // 수학
int eng=0; // 영어
int soc=0; // 사회
int sci=0; // 과학
char name[10]; // 이름printf(성적 입력\n\n);
printf(이름을 입력해 주세요. : );
scanf(%s, &name);
printf(\n국어 성적을 입력해 주세요. : );
scanf(%d, &kor);
printf(\n수학 성적을 입력해 주세요. : );
scanf(%d, &mat);
printf(\n영어 성적을 입력해 주세요. : );
scanf(%d, &eng);
printf(\n사회 성적을 입력해 주세요. : );
scanf(%d, &soc);
printf(\n과학 성적을 입력해 주세요. : );
scanf(%d, &sci);
result = (eng + kor + mat + sci + soc);
avg = result / 5;
printf(\n성적 입력이 끝났습니다. 자동으로 성적 출력으로 들어갑니다.\n\n);
printf(\n성적 출력\n);
printf(%s 님의 성적입니다. \n국어 성적은 %d점\n수학 성적은 %d점\n영어 성적은 %d점\n사회 성적은 %d점\n과학 성적은 %d점\n총합 %d점\n평균 %d점\n, name, kor, mat, eng, soc, sci, result, avg);
printf(끝났습니다.);
fprintf(fp,%s\n,name);
fprintf(fp,%d\n,kor);
fprintf(fp,%d\n,mat);
fprintf(fp,%d\n,eng);
fprintf(fp,%d\n,soc);
fprintf(fp,%d\n,sci);
//fprintf(fo,%s 님의 성적입니다. \n국어 성적은 %d점\n수학 성적은 %d점\n영어 성적은 %d점\n사회 성적은 %d점\n과학 성적은 %d점\n총합 %d점\n평균 %d점\n, name, kor, mat, eng, soc, sci, result, avg);
fclose(fp);
fclose(fo);
/*int su,a;
char ir[11];
printf(몇명입니까? ); scanf(%d,&su);
for(a=0;asu;a++)//예
{
printf(이름: );
scanf(%s,ir);
printf(입력된 이름: %s\n,ir);
}*/
}
else if(a1==3)
{
z=추가;
printf(%s를 선택하셨습니다.\n,z);
int asp;int a,b,c,d,e,f,g,h,i;//성적 산출
char ir[11],ir2[11],ir3[11];
printf(이름 3개 입력: ); scanf(%s %s %s,ir,ir2,ir3);
printf(%s의 국어 영어 수학 점수를 입력: ,ir); scanf(%d %d %d,&a,&b,&c);
printf(%s의 국어 영어 수학 점수를 입력: ,ir2); scanf(%d %d %d,&d,&e,&f);
printf(%s의 국어 영어 수학 점수를 입력: ,ir3); scanf(%d %d %d,&g,&h,&i);
int abc=a+b+c,def=d+e+f,ghi=g+h+i;
double abc2=abc/3,def2=def/3,ghi2=ghi/3;
printf(\t\t성적표\n);
puts(-------------------------------------------);
puts( 성명 국어 영어 수학 평균 총점);
puts(-------------------------------------------);
printf( %4s %5d %5d %5d %5.2f %5d\n,ir,a,b,c,abc2,abc);
puts(-------------------------------------------);
printf( %4s %5d %5d %5d %5.2f %5d\n,ir2,d,e,f,def2,def);
puts(-------------------------------------------);
printf( %4s %5d %5d %5d %5.2f %5d\n,ir3,g,h,i,ghi2,ghi);
puts(-------------------------------------------);
}
else
{
printf(\n잘못 입력하셨습니다.\n1. 성적 보기\n2. 성적 관리\n3. 추가\n다시 입력하세요: ); goto clear;
}
/*int su,a;//이름 반복 입력
char ir[11];
printf(몇명입니까? ); scanf(%d,&su);
for(a=0;asu;a++)
{
printf(이름: );
scanf(%s,ir);
printf(입력된 이름: %s\n,ir);
}*/
/*int a,b,c,d,e,f,g,h,i;//성적 산출
char ir[11],ir2[11],ir3[11];
printf(이름 3개 입력: ); scanf(%s %s %s,ir,ir2,ir3);
printf(%s의 국어 영어 수학 점수를 입력: ,ir); scanf(%d %d %d,&a,&b,&c);
printf(%s의 국어 영어 수학 점수를 입력: ,ir2); scanf(%d %d %d,&d,&e,&f);
printf(%s의 국어 영어 수학 점수를 입력: ,ir3); scanf(%d %d %d,&g,&h,&i);
int abc=a+b+c,def=d+e+f,ghi=g+h+i;
double abc2=abc/3,def2=def/3,ghi2=ghi/3;
printf(\t\t성적표\n);
puts(-------------------------------------------);
puts( 성명 국어 영어 수학 평균 총점);
puts(-------------------------------------------);
printf( %s %5d %5d %5d %5.2f %5d\n,ir,a,b,c,abc2,abc);
puts(-------------------------------------------);
printf(%s %d %d %d %.2f %d\n,ir2,d,e,f,def2,def);
puts(-------------------------------------------);
printf(%s %d %d %d %.2f %d\n,ir3,g,h,i,ghi2,ghi);
puts(-------------------------------------------);
}*/
system(pause);
}
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2700562 | 함수포인터에서요 (7) | 소심한여자 | 2025-07-06 |
2700530 | 전처리문 질문입니다. (1) | 아놀드 | 2025-07-05 |
2700510 | c언어를 어케하면 잘할수 있을까요.. | 연연두 | 2025-07-05 |
2700484 | 두 개가 차이가 뭔지 알려주세요...(소수 찾는 프로그램) (2) | 날위해 | 2025-07-05 |
2700426 | 인터넷 창 띄우는 질문이요 (1) | 정훈 | 2025-07-04 |
2700400 | 원넓이를 계산이요 ㅜㅜ | 천칭자리 | 2025-07-04 |
2700368 | if에 관해서 질문이요... | Orange | 2025-07-04 |
2700339 | 이거 결과값이 왜이런건지.. (4) | 그댸와나 | 2025-07-04 |
2700313 | 파일 읽어서 저장하는데 빈파일일 경우 문재가 발생하네요.. (2) | 크나 | 2025-07-03 |
2700287 | 구조체 동적할당 연습을 하는데 오류가 뜹니다...(해결) (3) | 아련나래 | 2025-07-03 |
2700264 | 문자와 숫자 동시에 입력??? | 글고운 | 2025-07-03 |
2700236 | txt파일로만 쓰고 읽게 하려면 어떻게 해야 하나요..?? (8) | 미국녀 | 2025-07-03 |
2700211 | 전위 연산자 (2) | 어른처럼 | 2025-07-02 |
2700183 | C에서 파일이름을 받고, 그 파일의 사이즈를 출력해줘야하는데 내용이 출력이 안되네요 ;ㅅ; | 피스케스 | 2025-07-02 |
2700150 | 꼭좀 도와주세요ㅠㅠㅠ | 호습다 | 2025-07-02 |
2700095 | 연산문제...질문... | 오빤테앵겨 | 2025-07-01 |
2700070 | while문 , 3의배수 출력하는 프로그램좀 짜주세욤. | 횃불 | 2025-07-01 |
2700041 | 초보인데요 ㅎ 배열안에 배열을 집어넣을수 있나요?? | 헛장사 | 2025-07-01 |
2700012 | 배열// (1) | 전갈자리 | 2025-07-01 |
2699895 | 무한루프에 빠집니다.!! 해결좀부탁드려요 (10) | 선아 | 2025-06-30 |