학습목표    1

학습주제    1

예습내용    1

실습방법    1

        1

중요함수    1

배열과 함수

학습목표

함수에서 1차원 배열의 인수 전달을 활용한다.

학습주제

1.       3명의 국어, 영어의 합을 구하는 프로그램을 입력부, 연산부, 출력부 함수로 구성하여 만든다.

2.       1차원 배열을 함수의 인수로 전달하여 처리한다.

예습내용

배열, 함수를 공부하고 다음 프로그램을 실행해 보시오.

예제1

3명의 국어,영어를 입력 받아 합을 구하는 프로그램

#include "stdafx.h"

#include "stdio.h"

 

int main(int argc, char* argv[])

 

{

              int i;

              int kor[3],eng[3],sum[3];

              float ave[3];

 

              //입력부 void Input(int kor[],int eng[], int sum[], int total)

 

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

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

 

             

              //연산부  void Calculate(int kor[],int eng[], int sum[], int total)

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

                             sum[i]=kor[i]+eng[i];

             

              //출력부  void Output(int kor[],int eng[], int sum[], int total)

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

                             printf("%d %d = %d \n",kor[i],eng[i],sum[i]);

             

              return 0;

}

실습방법

   

1.       예제1 프로그램을 함수를 써서 작성한 것이다.

예제2

3명의 국어,영어를 입력 받아 합을 구하는 프로그램

#include "stdafx.h"

#include "stdio.h"

 

void Input(int kor[],int eng[], int sum[], int total);

void Calculate(int kor[],int eng[], int sum[], int total);

void Output(int kor[],int eng[], int sum[], int total);

 

int main(int argc, char* argv[])

 

{

              int i;

              int kor[3],eng[3],sum[3];

              float ave[3];

 

              Input(kor,eng,sum,3);

              Calculate(kor,eng,sum,3);

              Output(kor,eng,sum,3);

 

              return 0;

}

 

void Input(int kor[],int eng[], int sum[], int total)

{

              int i;

 

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

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

}

 

void Calculate(int kor[],int eng[], int sum[], int total)

{

              int i;

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

                             sum[i]=kor[i]+eng[i];

}

 

void Output(int kor[],int eng[], int sum[], int total)

{

              int i;

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

                             printf("%d %d = %d \n",kor[i],eng[i],sum[i]);

}

 

다음은 3명의 국어,영어를 입력 받아 합을 구하는 프로그램이다.

예제3

전역변수를 이용하여 예제1 프로그램 변형 하시오.

(kor,eng,sum 전역 변수로 되어 있어서 인수의 전달이 필요 없다.)

#include "stdafx.h"

#include "stdio.h"

 

void Input(void);

 

int kor[3],eng[3],sum[3],total=3;  // 전역변수로 선언

 

int main(int argc, char* argv[])

{

              int i;

              float ave[3];

             

              Input(void);

              Calculate(void);

              Output(void)

             

return 0;

}

 

void Input(void)

{

              int i;

 

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

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

}

 

여기에 함수 프로그램을 기술한다.

 

처음

   

1.       예제2 수학(math) 추가하고 전체 인원을 5명으로 프로그램을 만드시오.

2.       예제3 프로그램을 완성하시오.

중요함수