[대체] 13. 구조체

2011. 2. 18. 01:29 from PROGRAMMING/C

/*7구조체 : 레코드단위

*/
#include<stdio.h>
struct Sungjuk
{
    int no;//멤버변수의 선언
    char name[10];
    int kor;
    int eng;
    int tot;//멤버변수는 순서의개념이 있으므로 한줄에 하나씩 선언하는것이 좋다
    double ave;
    char grade;
    int rank;
};//구조체자료형 Sungjuk의 선언
typedef struct Sungjuk score;//구조체 이름 변경(꼭할필요는 없으나 작업이 편리해짐)
int main()
{
    score p={110833,"홍길동",87,88};//구조체변수 p선언(멤버변수의 순서대로)
    //printf("p의 byte수 : %d\n",sizeof(p));
    p.tot=p.kor+p.eng;
    p.ave=p.tot/2.0;
    switch((int)p.ave/10)
    {
        case 10:
        case 9:p.grade='A';break;
        case 8:p.grade='B';break;
        case 7:p.grade='C';break;
        case 6:p.grade='D';break;
        default:p.grade='F';
    }
    printf("번호\t이름\t국어\t영어\t총점\t평균\t평가\n");
    printf("%d\t%s\t%3d\t%3d\t%4d\t%.1f\%6c\n",p.no,p.name,p.kor,p.eng,p.tot,p.ave,p.grade);//구조체변수.멤버변수
    return 0;
}



/구조체자료형을 헤더파일로 만들기/

#ifndef SUNGJUK_H_INCLUDED
#define SUNGJUK_H_INCLUDED
struct Sungjuk
{
    int no;//멤버변수의 선언
    char name[10];
    int kor;
    int eng;
    int tot;//멤버변수는 순서의개념이 있으므로 한줄에 하나씩 선언하는것이 좋다
    double ave;
    char grade;
    int rank;
};//구조체자료형 Sungjuk의 선언

#endif // SUNGJUK_H_INCLUDED

'PROGRAMMING > C' 카테고리의 다른 글

[대체] 성적표구조체배열(사용자함수)  (0) 2011.02.18
[대체] 구조체배열  (0) 2011.02.18
[대체] 12. 포인터  (0) 2011.02.18
[대체] 사용자함수  (0) 2011.02.18
[대체] 자리배치(1차원배열, 난수)  (0) 2011.02.18
Posted by 마마필로 :