대충 프로그램 내용은 상대방의 성적(국어,영어,수학)을 입력받아 for 문으로 좍 출력 하는건데여..
이때 몇명의 성적을 입력할것인지의 여부를 변수 in에 저장을해서 배열[in] 이런식으로 선언을 하려 했는데
역시 아직 내공이 부족한 탓에 이것저것 많이 헷갈리네여^^ 일단 소스는 이렇게 코딩했구여..
#include <stdio.h>
#define A 90
#define B 80
#define C 70
#define D 60
struct sungjuk
{
int hakbun;
char name[30];
int kor;
int eng;
int math;
int tot;
int ave;
char hakjum;
};
void main()
{
int in,i;
printf("몇명의 시험점수를 입력하시겠습니까?\n");
scanf("%d",&in);
struct sungjuk student[in]; <- 컴파일 할경우 여기서 꼭 오류가 나더군여..ㅠㅠ
struct sungjuk *stu;
stu=student;
printf("학번 이름 국어 영어 수학 총점 평균 학점\n");
printf("=============================================\n");
for(i=0;i<=in;i++,stu++)
{
printf("학번을 입력하세요:\n");
scanf("%d",&stu->hakbun);
printf("이름을 입력하세요:\n");
scanf("%s",&stu->name);
printf("국어점수를 입력하세요:\n");
scanf("%d",&stu->kor);
printf("영어점수를 입력하세요:\n");
scanf("%d",&stu->eng);
printf("수학점수를 입력하세요:\n");
scanf("%d",&stu->math);
stu->tot=stu->kor+stu->eng+stu->math;
stu->ave=stu->tot/3;
if(stu->ave>=A) stu->hakjum='A';
else if(stu->ave>=B) stu->hakjum='B';
else if(stu->ave>=C) stu->hakjum='C';
else if(stu->ave>=D) stu->hakjum='D';
else stu->hakjum='F';
printf("%4d%4s%4d%4d%4d%4d%4d%4c",stu->hakbun,stu->name,stu->kor
,stu->eng,stu->math,stu->tot,stu->ave,stu->hakjum);
}
}
자꾸 저기 변수 in 이 선언을 잘못해서인지 오류가 나는 바람에 결과물 확인도 못해보고 있답니다..
제가 궁금한건 배열[] 괄호안에 변수를 넣어서 사용할수 있는지의 여부와 지금 작성된 소스의 for(i=0;i<in;i++,stu++)
부분이 제대로 돌아 갈것이냐의 여부...
지금 책으로 포인터부분 과 구조체 부분을 보면서 작성해 봤는데 책에는 자세하게 나와 있지도 않고 해서 급한 마음에
이렇게 도움을 얻어보자 올려봅니다.. ^^
제발 많은 질책과 조언 부탁드립니다..
|