Turbo-C
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
터보-C 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
Lua 게시판
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C/C++ Q/A
[5632] Re:Re:c언어 왕왕초보돼요 지금 for문하고 배열이해가잘안가고있어요
98766543345 [] 1958 읽음    2006-03-08 22:37
외랑 님이 쓰신 글 :
: #include <stdio.h>
: #include <conio.h>
:                                // 동적 배열을 지금하시는 건 아니라고 생각되어..
: #define CStudent            5  // 학생수를 미리 정의한다.. 배열로 잡기위해
: #define CSubject            3  // 과목 수를 정의 한다.
: #define CSubjectNameChar    20  // 과목명을 저장할 길이 20문자로 정의
:
: //학생수 국어 수학 영어 등등 합계 평균 순위
:
: int main(int argc, char* argv[])
: {
:     int Item[CStudent][CSubject];   // 학생수만큼 과목수만큼 같이 저장할 2차원배열 정의
:     int i,j;                        // i는 학생수로 j는 과목수로 사용할 것임
:     char SubjectName[CSubject][CSubjectNameChar] = { "국어", "수학", "영어" };
:     double Sum[CStudent], Avg[CStudent];       // 요건 학생수만큼 있음 되겠죠
:
:
:     for(i=0; i<CStudent; i++)       // i는 학생수만큼 증가하며 돌고, 단문이므로 {}생략했음
:         for(j=0; j<CSubject; j++)   // j는 과목수만큼 증가하며 돌기.
:         {
:             printf("%d번째 학생의 %s 과목 점수를 입력하시오 : ", i+1, SubjectName[j]); // 과목명 배열은 단순히 출력을 위해 사용했음
:             scanf(" %d", &Item[i][j]);   // 그냥 간단히 과목당 점수를 입력 받습니다.
:         }
:     /// 이제 합계와 평균을 구해봅시다
:     for(i=0; i<CStudent; i++)       // i는 학생수만큼 증가하며 돌고, 복문이므로 {}사용
:     {
:         Sum[i] = 0.0;               // 합계는 학생별로 초기화 해야겠죠..
:         for(j=0; j<CSubject; j++)   // j는 과목수만큼 증가하며 돌기. 단문이므로 {}생략했음
:             Sum[i] += Item[i][j];   // 과목당 점수를 다 누적합니다.
:         Avg[i] = Sum[i] / CSubject; // 과목점수의 합계를 과목수로 나누면 평균이죠.
:     }
:     /// 이제 합계와 평균을 출력해 봅시다
:     for(i=0; i<CStudent; i++)       // i는 학생수만큼 증가하며 돌고, 단문이므로 {}생략했음
:         printf("%d번째 학생의 합계: %lf, 평균: %lf\n", i+1, Sum[i], Avg[i]);
:           // double형의 출력이므로 %lf 사용했음, i는 0부터 시작하므로 1을 더해서 출력했음.
:
: /*
:     // 위의 3개로 나눈 for구문을 하나로 합쳐서 아래와 같이 해도 됩니다. 한 학생당 한번씩 처리
:     for(i=0; i<CStudent; i++)       // i는 학생수만큼 증가하며 돌고,
:     {
:         Sum[i] = 0.0;               // 합계는 학생별로 초기화 해야겠죠..
:         for(j=0; j<CSubject; j++)   // j는 과목수만큼 증가하며 돌기.
:         {
:             printf("%d번째 학생의 %s 과목 점수를 입력하시오 : ", i+1, SubjectName[j]); // 과목명 배열은 단순히 출력을 위해 사용했음
:             scanf(" %d", &Item[i][j]);   // 그냥 간단히 과목당 점수를 입력 받습니다.
:             Sum[i] += Item[i][j];   // 과목당 점수를 다 누적합니다.
:         }
:         Avg[i] = Sum[i] / CSubject; // 과목점수의 합계를 과목수로 나누면 평균이죠.
:         printf("%d번째 학생의 합계: %lf, 평균: %lf\n", i+1, Sum[i], Avg[i]);
:     }
: */
:
:     getch();
:     return 0;
: }
: //---------------------------------------------------------------------------
:
:
: ㅇㅇㅇㅇ 님이 쓰신 글 :
: : 우선 for문으로 삼각형만들기 정말로힘들어요 그리고 배열 2차원배열요 쉽게이해할수었나요
: : for문하고 배열로만 프로그램만들고싶은데 (학생수 국어 수학 영어 등등 합계 평균 순위 )
: : 알려주세요


#define ST_NUM 3
#define GW_NUM 3
#define EP_NUM 1
int main(int argc, char* argv[])
{
    char name[ST_NUM][20];
    int  rec[ST_NUM][GW_NUM];
    int sum;
    float average;
    int i,a;

    for (i = 0; i < ST_NUM; i++)
    {
        printf("NO.%d 이름 :",i);scanf("%s",name[i]);

        for (a = 0; a < EP_NUM; a++)
        {

            printf("국어 점수:");scanf("%d",&rec[i][0]);
            printf("수학 점수:");scanf("%d",&rec[i][1]);
            printf("영어 점수:");scanf("%d",&rec[i][2]);
        }

      }
      fflush(stdin);
    clrscr();
    for (i = 0; i < ST_NUM; i++)
    {
       sum=rec[i][0]+rec[i][1]+rec[i][2];
        average=sum/3.0;
       for (a = 0; a < GW_NUM; a++)
       {

        if (a==0)
        {
           printf("NO.%d %s님 :국어 점수:%d",i,name[i],rec[i][a]);
        }
        else if (a==1)
        {
           printf("수학 점수:%d",rec[i][a]);

        }
        else if (a==2)
        {
          printf("영어 점수:%d 합계:%d 평균:%.2f\n",rec[i][a],sum,average );
        }
         }
    }

                getch();
    return 0;
}

+ -

관련 글 리스트
5628 c언어 왕왕초보돼요 지금 for문하고 배열이해가잘안가고있어요 ㅇㅇㅇㅇ 2095 2006/03/06
5630     Re:c언어 왕왕초보돼요 지금 for문하고 배열이해가잘안가고있어요 외랑 2314 2006/03/08
5632         Re:Re:c언어 왕왕초보돼요 지금 for문하고 배열이해가잘안가고있어요 98766543345 1958 2006/03/08
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.