컴퓨터 프로그래밍 기초 - 8th : 함수와 변수 / 배열 - 김선균 (kyun@kangwon.ac.kr) 2017. 05. 17
< 목 차 > 시험 문제 풀이 지역변수 vs 전역변수 Static 변수에 대한 개요 및 실습 재귀 함수 = 순환 함수(Recursion function) 다중 소스 프로그래밍 (과제)
1. 지역변수 vs 전역변수 지역 변수 전역 변수 중괄호( { } ) 내에서 선언된 변수로 괄호 내에서만 사용 가능 괄호를 벗어나면 지역변수는 메모리에서 사라진다. 전역 변수 함수 이외의 공간에 선언된 변수로 코드 내에 어느 곳에서든 접근이 가능 지역변수와 전역변수 이름이 똑같을 때는 지역변수를 우선 보통의 경우 헤더파일( ex. #include <stdio.h> ) 아래에 선언한다.
1. 지역변수 vs 전역변수 전역변수 사용 예제
1. 지역변수 vs 전역변수 지역변수와 전역변수의 이름이 같을 때?
2. static 변수의 개요 및 실습 지역변수와 전역변수의 중간 형태 : static 변수 int main(void) { static int number; return 0; }
2. static 변수의 개요 및 실습 static 변수의 사용 예제
3. 재귀 함수 ( 순환 함수 ) 재귀 함수(순환 함수)는 함수가 자기 자신을 호출하면서 문제를 해결하는 함수 자기 자신 호출 시 함수 내에는 종료되기 위한 조건이 들어가야 한다.
3. 재귀 함수 ( 순환 함수 ) Factorial 계산하는 프로그래밍 – 재귀 (순환) 함수
3. 재귀 함수 ( 순환 함수 ) 피보나치 수열을 계산하는 프로그래밍
4. 다중 소스 프로그래밍 함수에 대한 정의(함수 원형)은 헤더 파일에 포함 그 이외의 소스 파일을 연결하여 하나의 프로그램 제작
4. 다중 소스 프로그래밍 // common.h ( 헤더 파일 ) #include <stdio.h> #define MAX_INPUT 30 int get_integer(void); int combination(int n, int r); int factorial(int n); // main.c #include "common.h" int main(void) { int a, b; a = get_integer(); b = get_integer(); printf("C(%d, %d) = %d \n", a, b, combination(a, b)); return 0; }
4. 다중 소스 프로그래밍 // combination.c #include "common.h" int combination(int n, int r) { return (factorial(n)/(factorial(r) * factorial(n-r))); } // factorial.c #include "common.h" int factorial(int n) { int i; long result = 1; for(i = 1; i <= n; i++) result *= i; // result = result * i return result; }
4. 다중 소스 프로그래밍 // get_input.c #include "common.h" int get_integer(void) { int n; printf("정수를 입력하시오: "); scanf("%d", &n); return n; }
4. 다중 소스 프로그래밍 Visual Studio 2010 Linux 컴파일 헤더파일(common.h)은 솔루션 탐색기 폴더에서 헤더 파일 폴더에 저장 나머지 소스 파일(combination.c, main.c, factorial.c, get_input.c)은 소스 파일 폴더에 저장 Linux 컴파일 gcc –o [실행파일] [소스파일] ex) gcc –o exe common.h main.c combination.c factorial.c get_input.c 로 수행
5. 배열의 개요 배열의 구조 – 같은 자료형을 가지는 변수들의 모임 배열의 선언은 아래와 같다. 인덱스(배열 번호)는 항상 0부터 시작한다. 즉, 위와 같이 선언되었을 때 grade[0]부터 grade[9]까지 존재한다.
5. 배열의 개요 - 초기화 배열 초기화 예제
5. 배열의 개요 – 원소 사용 예제 배열 원소 사용 예제
6. 배열의 복사 & 비교 & 활용 배열의 복사 예제
6. 배열의 복사 & 비교 & 활용 배열의 비교 예제
6. 배열의 복사 & 비교 & 활용 배열을 이용하여 최소값을 찾는 프로그램
5.과제 #4 다중 소스 프로그래밍 실제로 visual studio 2010에서 실습하기 해당 프로그램을 작성 후 실행화면 캡쳐파일과 소스파일을 kyun@kangwon.ac.kr 로 보내주세요. [학번][이름] 과제#4
4. Q&A