C Programming Seminar

Preview:

DESCRIPTION

C Programming Seminar. 함수. 함수의 기본구조. 함수. 함수의 기본구조. 함수. 함수의 기본구조 함수를 선언하는 경우 함수 인자들의 정확한 데이터형을 함께 적어주 어야 한다. 함수. 함수의 기본구조 함수를 선언하는 경우 함수 인자들의 정확한 데이터형을 함께 적어주 어야 한다. 함수. 함수의 기본구조. #include< stdio.h >. 함수 원형의 선언. m ain() {. 함수 호출. }. 함수. 함수 정의. - PowerPoint PPT Presentation

Citation preview

C Programming

Seminar

함수

함수

함수의 기본구조

C 언어에서 함수의 형식[ 함수 원형의 선언 형식 ]자료형 함수 이름 ( 함수 인자들 );

[ 함수 본체 형식 ]자료형 함수 이름 ( 함수 인자들 ){ 변수 선언 ; …… 문장 ; …… return 변수 또는 수식 또는 상수 ;}

함수

함수의 기본구조

C 언어에서 함수의 예[ 함수 원형의 선언의 예 ]int add(int number1, int number2);

[ 함수 본체의 예 ]int add(int number1, int number2){ int nResultValue; nResultValue = number1 + number2;

return nResultValue;}

함수

함수의 기본구조

함수를 선언하는 경우 함수 인자들의 정확한 데이터형을 함께 적어주어야 한다 .

Minus(int First_Num, int Second_Num, float Result_Num);Minus(int First_Num, Second_Num);Minus(int First_Num, Second_Num, float Result_Num);

함수

함수의 기본구조

함수를 선언하는 경우 함수 인자들의 정확한 데이터형을 함께 적어주어야 한다 .

Minus(int First_Num, int Second_Num, float Result_Num);Minus(int First_Num, Second_Num); // 올바르지 않은 표현Minus(int First_Num, Second_Num, float Result_Num); // 올바르지 않은 표현

함수

함수의 기본구조

함수 원형의 선언

함수 호출

함수 정의

#include<stdio.h>

main(){

}

함수 원형과 함수 호출 , 함수 정의의 프로그램상에서의 위치

함수

C 언어에서 함수를 사용하는 예#include <stdio.h>

int add(int number1, int number2);

void main(){

int number1=3, number2=5;int nSum;

nSum=add(number1, number2);

printf("number1 + number2 = %d\n", nSum);}

int add(int number1, int number2){

int nResultValue;

nResultValue=number1 + number2;

return nResultValue;}

함수의 기본구조

함수

C 언어에서 함수를 사용하는 예#include <stdio.h>

int add(int number1, int number2);

void main(){

int number1=3, number2=5;int nSum;

nSum=add(number1, number2);

printf("number1 + number2 = %d\n", nSum);}

int add(int number1, int number2){

int nResultValue;

nResultValue=number1 + number2;

return nResultValue;}

함수의 기본구조

함수

함수의 정의와 선언

함수를 사용하려면 선언해야 한다 .선언된 함수는 프로그램 코드 어딘가에는 정의되어 있어야 한다 .

선언 (Declaration) - 함수의 원형

정의 (Definition) - 함수의 몸체를 포함하는 함수 자체

함수

#include <stdio.h>

void Function();

void main(){ Function();}

void Function(){ printf(" 함수의 사용 ");}

#include <stdio.h>

void Function(){ printf(" 함수의 사용 ");}

void main(){ Function();}

#include <stdio.h>

void main(){ Function();}

void Function(){ printf(" 함수의 사용 ");}

어떤 소스가 컴파일 에러가 생길까 ?

함수의 정의 와 선언

함수

#include <stdio.h>

void Function();

void main(){ Function();}

void Function(){ printf(" 함수의 사용 ");}

#include <stdio.h>

void Function(){ printf(" 함수의 사용 ");}

void main(){ Function();}

#include <stdio.h>

void main(){ Function();}

void Function(){ printf(" 함수의 사용 ");}

컴파일 에러

함수는 함수가 사용되는 부분의 위쪽에 선언 or

정의되어야 한다 .

함수의 정의 와 선언

함수

함수의 원형이 선언되지 않은 예#include <stdio.h>

int add(int number1, int number2){

int nResultValue;

nResultValue=number1 + number2;

return nResultValue;}

void main(){

int number1=3, number2=5;int nSum;

nSum=add(number1, number2);

printf("number1 + number2 = %d\n", nSum);}

함수의 정의 와 선언

함수

함수의 원형이 선언되지 않은 예#include <stdio.h>

int add(int number1, int number2){

int nResultValue;

nResultValue=number1 + number2;

return nResultValue;}

void main(){

int number1=3, number2=5;int nSum;

nSum=add(number1, number2);

printf("number1 + number2 = %d\n", nSum);}

함수의 정의와 선언

함수

매개변수 사용법

함수 본체에 자료를 전달하는 역할을 하는 것

C 언어에서 매개변수를 지정하는 형식함수 이름 ( 매개변수 이름 ){ 매개변수를 이용한 명령어}

C 언어에서 매개변수를 지정하는 예add(number, number2){ printf(“number1 + number2=%d”, number1+number2);}

함수

매개변수를 사용한 숫자의 제곱을 보여주는 프로그램#include <stdio.h>

int square(int number);

void main(){

int nResult = 0;

nResult = square(15);

printf("15^2 = %d\n", nResult);}

int square(int number){

int nTmpResult=0;

nTmpResult = number * number;

return nTmpResult;}

매개변수 사용법

함수

매개변수를 사용한 숫자의 제곱을 보여주는 프로그램#include <stdio.h>

int square(int number);

void main(){

int nResult = 0;

nResult = square(15);

printf("15^2 = %d\n", nResult);}

int square(int number){

int nTmpResult=0;

nTmpResult = number * number;

return nTmpResult;}

매개변수 사용법

함수

두 개의 매개변수를 곱한 결과를 보여주는 프로그램#include <stdio.h>

int multiple(int number1, int number2);

void main(){

int nResult = 0;

nResult = multiple(5,6);

printf("5 x 6 = %d\n", nResult);}

int multiple(int number1, int number2){

int nTmpResult=0;

nTmpResult=number1*number2;

return nTmpResult;}

매개변수 사용법

함수

두 개의 매개변수를 곱한 결과를 보여주는 프로그램#include <stdio.h>

int multiple(int number1, int number2);

void main(){

int nResult = 0;

nResult = multiple(5,6);

printf("5 x 6 = %d\n", nResult);}

int multiple(int number1, int number2){

int nTmpResult=0;

nTmpResult=number1*number2;

return nTmpResult;}

매개변수 사용법

함수

재귀 함수와 호출

함수 내부에서 자기 자신을 다시 호출하는 것

무한루프로 빠질 수 있으므로 사용할 때 주의해야 한다 .

함수

무한루프에 빠지는 재귀함수#include <stdio.h>

void forever(){

printf("forever value!!!");forever();

}

void main(){

forever();}

재귀 함수와 호출

함수

무한루프에 빠지는 재귀함수#include <stdio.h>

void forever(){

printf("forever value!!!");forever();

}

void main(){

forever();}

재귀 함수와 호출

함수

재귀함수를 이용한 1 부터 입력한 수까지의 홀수의 합 구하기#include <stdio.h>

int self(int number){

if(number%2==0){

number=number-1;}if(number==1){

return 1;}return self(number-2) + number;

}

void main(){

int number, result;printf("self(number = 1+3+5+...+n\nRandom Number : ");scanf("%d", &number);

result=self(number);printf("self(%d) = %d\n", number, result);

}

재귀 함수와 호출

함수

재귀함수를 이용한 1 부터 입력한 수까지의 홀수의 합 구하기#include <stdio.h>

int self(int number){

if(number%2==0){

number=number-1;}if(number==1){

return 1;}return self(number-2) + number;

}

void main(){

int number, result;printf("self(number = 1+3+5+...+n\nRandom Number : ");scanf("%d", &number);

result=self(number);printf("self(%d) = %d\n", number, result);

}

재귀 함수와 호출