함수(Function) ◈ 함수의 개념 및 사용 이유 ◈ 함수 정의, 호출 및 선언 ◈ 지역변수와 전역변수 ◈ return 문

Slides:



Advertisements
Similar presentations
Chapter 12. 배열. 배열  동일한 항목들이 동일한 크기로 연속적으로 메모리에 저장되는 구조  동일한 자료 유형이 여러 개 필요한 경우에 이용할 수 있는 자료 구조.
Advertisements

ㅎㅎ 구조체 구조체 사용하기 함수 매개변수로서의 구조체 구조체 포인터와 레퍼런스 구조체 배열.
ㅎㅎ 구조체 C++ 프로그래밍 기초 : 객체지향의 시작 구조체 사용하기 함수 매개변수로서의 구조체 구조체 포인터와 레퍼런스
제 7 장 함수 사용을 통해 엑셀 정복하기.
슬라이드 1~21까지는 각자 복습! 슬라이드 22부터는 수업시간에 복습
쉽게 풀어쓴 C언어 Express 제11장 포인터 C Express Slide 1 (of 27)
2장. 프로그램의 기본 구성. 2장. 프로그램의 기본 구성 2-1"Hello, World!" 들여다 보기 /* Hello.c */ #include int main(void) { printf("Hello, World! \n"); return 0;
쉽게 풀어쓴 C언어 Express 제11장 포인터 C Express.
9장. C 언어의 핵심! 함수. 9장. C 언어의 핵심! 함수 9-1 함수의 정의와 선언 main 함수 다시 보기 : 함수의 기본 형태 { } 그림 9-1.
Chapter 7. 조건문.
Report #2 - Solution 문제 #1: 다음과 같이 프로그램을 작성하라.
컴퓨터 프로그래밍 기초 [Final] 기말고사
쉽게 풀어쓴 C언어 Express 제8장 함수 C Express.
개정판 누구나 즐기는 C언어 콘서트 제8장 함수 출처: pixabay.
컴퓨터의 기초 제 4강 - 표준 입출력, 함수의 기초 2006년 4월 10일.
6장. printf와 scanf 함수에 대한 고찰
3장. 변수와 연산자. 3장. 변수와 연산자 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, / 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, /
KIM HEESANG JDBC Programming 3 KIM HEESANG
7. while 문의 흐름 제어.
6 반복문의 기본 for 문 여러 번 반복하는 작업은 for 문으로!.
7 while 문의 흐름 제어 조건만 만족한다면 무조건 무한 반복!.
8장 함수 함수의 필요성 라이브러리 함수와 사용자 정의 함수 함수의 정의, 원형, 호출 배열을 함수 인자로 전달 재귀호출.
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
컴퓨터 프로그래밍 기초 #02 : printf(), scanf()
Chapter 06. 선택문.
2주차: 변수, 수식, Control Flow.
11 표준 입출력과 파일 입출력 데이터를 읽고 쓰는 다양한 방법 익히기!.
14장. 포인터와 함수에 대한 이해.
KIM HEESANG PL/SQL 2 KIM HEESANG
11장. 1차원 배열.
13. 연산자 오버로딩.
C 4장. 연산자 #include <stdio.h> int main(void) { int num;
사용자 함수 사용하기 함수 함수 정의 프로그램에서 특정한 기능을 수행하도록 만든 하나의 단위 작업
어서와 C언어는 처음이지 제14장.
어서와 C언어는 처음이지 제15장.
19. 함수 포인터와 void 포인터.
3장. 변수와 연산자 교안 : 전자정보통신 홈페이지 / 커뮤니티/ 학술세미나
컴퓨터 프로그래밍 기초 - 4th : 수식과 연산자 -
제어문 & 반복문 C스터디 2주차.
제 1 강.
3장. 변수와 연산자. 3장. 변수와 연산자 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, / 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, /
게임프로그래밍 I - 1차원 배열 - 공주대학교 게임디자인학과 박 찬 교수 2011년 4월 25일.
Chapter 11. 배열과 포인터.
김선균 컴퓨터 프로그래밍 기초 - 7th : 함수 - 김선균
컴퓨터 프로그래밍 기초 - 8th : 함수와 변수 / 배열 -
5장 선택제어문 if 선택문 switch-case 선택문 다양한 프로그램 작성 조건 연산자.
Chapter 08. 함수.
Fucntion 요약.
9장. C 언어의 핵심! 함수. 9장. C 언어의 핵심! 함수 9-1 함수의 정의와 선언 main 함수 다시 보기 : 함수의 기본 형태 { } 그림 9-1.
-Part1- 제7장 반복문이란 무엇인가.
프로그램 개발 방법론 부재 : 연습문제 (6장) 학번: 이름:김치우.
제 6 장 함수(functions).
제 15 강 문자와 코드 shcho.pe.kr.
4장. 데이터 표현 방식의 이해. 4장. 데이터 표현 방식의 이해 4-1 컴퓨터의 데이터 표현 진법에 대한 이해 n 진수 표현 방식 : n개의 문자를 이용해서 데이터를 표현 그림 4-1.
7장 함수(Function).
Homework #12 (1/2) 프로그램을 작성하고, 프로그램과 실행 결과를 프린트하여 제출한다.
Flow Diagram IV While.
쉽게 풀어쓴 C언어 Express 제6장 조건문 C Express.
컴퓨터 프로그래밍 기초 - 9th : 배열 / 포인터 -
실습과제 (변수와 자료형, ) 1. 다음 작업 (가), (나), (다)를 수행하는 프로그램 작성
동적메모리와 연결 리스트 컴퓨터시뮬레이션학과 2016년 봄학기 담당교수 : 이형원 E304호,
어서와 C언어는 처음이지 제16장.
1. 지역변수와 전역변수 2. auto, register 3. static,extern 4. 도움말 사용법
어서와 C언어는 처음이지 제21장.
개정판 누구나 즐기는 C언어 콘서트 제13장 동적 메모리 출처: pixabay.
수업 내용 수업 목표 강의 내용 강의 계획서 교과서 및 참고도서 평가 방법 수강생의 학습 방법 제안 강의자료 사이트
Chapter 09. 배열.
어서와 C언어는 처음이지 제22장.
함수 강의자료 및 기말도우미.
함수 정의, void 자료형 함수 원형선언 함수 호출 변수 영역 규칙 재귀 함수
Presentation transcript:

함수(Function) ◈ 함수의 개념 및 사용 이유 ◈ 함수 정의, 호출 및 선언 ◈ 지역변수와 전역변수 ◈ return 문 ◈ 함수의 개념 및 사용 이유 ◈ 함수 정의, 호출 및 선언 ◈ 지역변수와 전역변수 ◈ return 문 ◈ 매개변수 전달 방법

함수의 개념 ◈ 부프로그램 : 독립적인 기능을 가지는 작은 단위의 프로그램 ◈ 부프로그램 : 독립적인 기능을 가지는 작은 단위의 프로그램 ☞ 프로시져(procedure) / ☞ 함수(function) 합계 프로그램 sum() 평균 프로그램 avg() 학점 프로그램 result() 키보더로부터 점수를 입력받는다 sum() 프로그램을 실행한다 avg() 프로그램을 실행한다 result() 프로그램을 실행한다. 합계, 평균, 학점을 출력한다. 성적처리 프로그램 점수 3개 합계 평균 학점

함수의 사용 이유 ◈ 문제의 분해는 대형 프로그램 작성에 필수적이다 ◈ 작은 단위의 프로그램은 작성이 쉽다 ◈ 문제의 분해는 대형 프로그램 작성에 필수적이다 ◈ 작은 단위의 프로그램은 작성이 쉽다 ◈ 디버깅(debugging)이 쉽다 ◈ 유지보수가 용이하다 ◈ 정보 은폐(information hiding)가 가능하다 ◈ 독립적이며 동등한 수준으로 작성하는 것이 바람직하다 ◈ C 언어는 하나이상의 함수들로 구성한다 ◈ 반드시 main()함수가 존재

함수(Function) ◈ 함수의 개념 및 사용 이유 ◈ 함수 정의, 호출 및 선언 ◈ 지역변수와 전역변수 ◈ return 문 ◈ 함수의 개념 및 사용 이유 ◈ 함수 정의, 호출 및 선언 ◈ 지역변수와 전역변수 ◈ return 문 ◈ 매개변수 전달 방법

함수 정의 printf(“%d + %d = %d \n", 10, 20, 30 ); ☞ 이미 정의되어져 있는 함수 ☞ 이미 정의되어져 있는 함수 #include <stdio.h> void main() { printf("안녕하세요. 테스트중입니다. 안녕히계세요."); } #include <stdio.h> void main() { printf(“%d + %d = %d \n", 10, 20, 30 ); }

함수 정의 f(x) = 3.5 + x // 함수 정의 ….. result = f(2) //위에서 정의한 함수 f(x)를 실행 a = f(4) // a = 7.5

함수 정의 f(x,y) = 3 * x + 2 * y // 함수 정의 ….. result = f(2,3) //위에서 정의한 함수 f(x,y)를 실행 ….. // result = 12 a = f(1,4) // a = 11 …….

함수 정의 헤더(header) 몸체(body) double f(int x) { double result; [리턴값의 자료형] 함수명 ([매개변수목록] ) [매개변수 자료형 선언;] { [함수 내부의 선언]; [명령 문장]; return 리턴값; } 헤더(header) 몸체(body) C 언어로 표현 f(x) = 3.5 + x // 함수 정의 ….. y = f(2) //위에서 정의한 함수 f(x)를 실행 ….. // y = 5.5 a = f(4) // a = 7.5 double f(int x) { double result; result = 3.5 + x; return result; }

함수 정의 헤더(header) 몸체(body) int f(int x, int y) { int result; [리턴값의 자료형] 함수명 ([매개변수목록] ) [매개변수 자료형 선언;] { [함수 내부의 선언]; [명령 문장]; return 리턴값; } 헤더(header) 몸체(body) C 언어로 표현 f(x , y) = 3 * x + 2 * y // 함수 정의 ….. y = f(2,3) //위에서 정의한 함수 f(x)를 실행 ….. // y = 12 a = f(1,4) // a = 11 int f(int x, int y) { int result; result = 3*x + 2*y; return result; }

함수 호출 sum 함수 정의(피호출함수) 실행함수(main) 작성(호출함수) #include <stdio.h> void main() { int su1, su2, su3, su_hap; su1=70; su2=80; su3=90; su_hap = sum(su1, su2, su3); printf(“ 합계 : %d\n”, su_hap); } int sum(int a, int b, int c) { int hap; hap = a + b + c; return hap; } : 가인수, 가매개변수 : 실인수, 실매개변수

함수 정의 및 호출 #1 kkk.c

함수 정의 및 호출 #2 #include <stdio.h> void main() { int su1, su2, su3, su_hap; su1=70; su2=80; su3=90; su_hap = sum(su1, su2, su3); printf("합계 : %d\n", su_hap); } int sum(int a, int b, int c) int hap; hap = a + b+ c; return hap; 호출 정의

함수 선언 int sum(int a, int b, int c); //함수 원형 선언 #include <stdio.h> int sum(int a, int b, int c); //함수 원형 선언 void main() { int su1, su2, su3, su_hap; su1=70; su2=80; su3=90; su_hap = sum(su1, su2, su3); printf("합계 : %d\n", su_hap); } int sum(int a, int b, int c) int hap; hap = a + b+ c; return hap;

함수(Function) ◈ 함수의 개념 및 사용 이유 ◈ 함수 정의, 호출 및 선언 ◈ 지역변수와 전역변수 ◈ return 문 ◈ 함수의 개념 및 사용 이유 ◈ 함수 정의, 호출 및 선언 ◈ 지역변수와 전역변수 ◈ return 문 ◈ 매개변수 전달 방법

지역 변수

전역 변수 test.c ◈ 독립성 결여됨 ◈ 재사용의 어려움 ◈ 디버깅의 어려움

함수(Function) ◈ 함수의 개념 및 사용 이유 ◈ 함수 정의, 호출 및 선언 ◈ 지역변수와 전역변수 ◈ return 문 ◈ 함수의 개념 및 사용 이유 ◈ 함수 정의, 호출 및 선언 ◈ 지역변수와 전역변수 ◈ return 문 ◈ 매개변수 전달 방법

실 습 1 강의 슬라이드의 모든 예제를 천천히 다시 읽어보면서 소스 분석, 이해한다. 실 습 1 강의 슬라이드의 모든 예제를 천천히 다시 읽어보면서 소스 분석, 이해한다. 슬라이드 11 번 소스를 입력하여 결과 확인한다.

실 습 2 ◈ 세 수를 입력 받아, 함수를 이용하여 최대값, 최소값을 구하시오. (단, 최대값과 최소값 함수는 따로 작성한다) ◈ 세 수를 입력 받아, 함수를 이용하여 최대값, 최소값을 구하시오. (단, 최대값과 최소값 함수는 따로 작성한다) #include <stdio.h> void main() { int a, b, c, max, min; printf(" 세 정수를 입력하세요 : "); scanf("%d %d %d", &a, &b , &c); max = a; if(b > max) max = b; if(c > max) max = c; min = a; if(b < min) min = b; if(c < min) min = c; printf("\n -----------------------\n\n"); printf(" 최대값 : %d \n\n", max); printf(" 최소값 : %d \n\n", min); printf(" --------------------------\n\n"); }     최대값 구하는 함수를 이용하여 max 값을 구하라. 최소값 구하는 함수를 이용하여 min 값을 구하라.

#include <stdio.h> max_func( ) 함수 정의 …. min_func( ) 함수 정의 …. void main() { int su1, su2, su3, max_su, min_su; printf(" 세 정수를 입력하세요 : "); scanf("%d %d %d", &su1, &su2 , &su3); max_su = max_func(su1,su2,su3); min_su = min_func(su1,su2,su3); printf("\n -----------------------\n\n"); printf(" 최대값 : %d \n\n", max_su); printf(" 최소값 : %d \n\n", min_su); printf(" --------------------------\n\n"); }    

실 습 3 ◈ 국어, 영어, 수학점수를 입력 받아, 합계, 평균, 학점을 출력하는 프로그램을 함수를 이용하여 작성하라. ( 단, 합계, 평균, 학점에 대한 함수는 각각 따로 작성한다)     0 ~ 100 사이의 점수 3개가 제대로 입력될 때까지 반복 입력한다.

#include <stdio.h> sum_func() 함수 정의 avg_func() 함수 정의 result_func() 함수 정의 main() { int kor, eng, math, sum; float avg; char result; while(1) { printf("국어, 영어, 수학의 성적점수를 입력하세요 : "); scanf("%d %d %d", &kor, &eng, &math); 제대로 입력되었는지 확인하고 빠져나간다…. } sum = sum_func(kor,eng,math) ; avg = avg_func(sum) ; result = result_func(avg) ; 합계, 평균, 학점을 출력한다…..