프로그래밍

대학 성적 처리 프로그램

Dilrong 2013. 5. 30. 22:05

#include<stdio.h>

#define STU 1

#define MAX 1

 

int trans(int a)

{

        if(a>=95 || a>=90)

        {

               a=4.5;

               return a;

        }else if(a>90 || a>=85){

               a=4.0;

               return a;

        }else if(a>85 || a>=80){

               a=3.5;

               return a;

        }else if(a>80 || a>=75){

               a=3.0;

               return a;

        }else if(a>75 || a>=70){

               a=2.5;

               return a;

        }else if(a>70 || a>65){

               a=2.0;

               return a;

        }else if(a>65 || a>60){

               a=1.5;

               return a;

        }else if(a>60 || a>55){

               a=1.0;

               return a;

        }else{

               a=0;

               return a;

        }

}

 

int main()

{

       double linux[STU],logic[STU],cpro[STU],infor[STU],human[STU],eng[STU],design[STU],tot[STU],ave[STU];

        int tlinux[STU],tlogic[STU],tcpro[STU],tinfor[STU],thuman[STU],teng[STU],tdesign[STU],timetot[STU];

        double sum[STU];

        int i;

 

        printf("대학 성적 계산 프로그램입니다. \n");

       

        for(i=0; i<STU; i++)

        {

               printf("\n 점수와학점을 입력해주세요.\n");

 

               printf("리눅스 시스템 : ");

               scanf("%lf", &linux[i]);

               linux[i] = trans(linux[i]);

               printf("학점 입력 : ");

               scanf("%d", &tlinux[i]);

 

               printf("논리 회로 : ");

               scanf("%lf", &logic[i]);

               logic[i] = trans(logic[i]);

               printf("학점 입력 : ");

               scanf("%d", &tlogic[i]);

 

               printf("C-Program : ");

               scanf("%lf", &cpro[i]);

               cpro[i] = trans(cpro[i]);

               printf("학점 입력 : ");

               scanf("%d", &tcpro[i]);

 

               printf("정보 과학적 사고 : ");

               scanf("%lf", &infor[i]);

               infor[i] = trans(infor[i]);

               printf("학점 입력 : ");

               scanf("%d", &tinfor[i]);

 

               printf("인간관계의 이해 : ");

               scanf("%lf", &human[i]);

               human[i] = trans(human[i]);

               printf("학점 입력 : ");

               scanf("%d", &thuman[i]);

 

               printf("커뮤니케이션 영어 : ");

               scanf("%lf", &eng[i]);

               eng[i] = trans(eng[i]);

               printf("학점 입력 : ");

               scanf("%d", &teng[i]);

 

               printf("디자인의 이해 : ");

               scanf("%lf", &design[i]);

               design[i] = trans(design[i]);

               printf("학점 입력 : ");

               scanf("%d", &tdesign[i]);

        }

 

        for(i=0; i<STU; i++)

        {

               tot[i] = linux[i]+logic[i]+cpro[i]+infor[i]+human[i]+eng[i]+design[i];

               timetot[i] = tlinux[i]+tlogic[i]+tcpro[i]+tinfor[i]+thuman[i]+teng[i]+tdesign[i];

               ave[i] = (tot[i]/7);

               sum[i] = ((linux[i]*tlinux[i])+(logic[i]*tlogic[i])+(cpro[i]*tcpro[i])+(infor[i]*tinfor[i])+(human[i]*thuman[i])+(eng[i]*teng[i])+(design[i]*tdesign[i]))/timetot[i];

        }

 

        for(i=0; i<STU; i++)

        {

               printf("\n===== %d번째 학생의 성적표 =====\n",i+1);

               printf("리눅스 시스템 : %.2lf\n", linux[i]);

               printf("논리 회로 : %.2lf\n", logic[i]);

               printf("C-Program : %.2lf\n", cpro[i]);

               printf("정보 과학적 사고 : %.2lf\n",infor[i]);

               printf("인간관계의 이해 : %.2lf\n", human[i]);

               printf("커뮤니케이션 영어 : %.2lf\n", eng[i]);

               printf("디자인의 이해 : %.2lf\n", design[i]);

               printf("총점 : %.2lf\n",tot[i]);

               printf("평균 : %.2lf\n",ave[i]);

               printf(" 평점 : %.2lf\n", sum[i]);

               printf("취득학점 : %d\n", timetot[i]);

        }

        return 0;

}

반응형