* 함수
- function, method, 멤버함수
- 처리해야 할 명령어들을 모아 놓은 것
- 함수는 메이커측에서 제공되는 함수가 있는데
대부분 객체형태로 제공된다
- 사용자 정의 함수 (user defined)
- 함수작성(정의), 함수호출
* 함수의 호출관계
- 파라미터값이 있으냐? 없느냐?
- return값이 있으냐? 없느냐?
- parameter (전달값)
* 함수 만드는 형식
리턴되는값의자료형 함수이름()
{
처리해야 하는 명령어
}
- 리턴값이 없는 함수 void형
- main() 함수는 사용자가 호출하는 함수가 아니다
- 함수를 작성할 때 main()함수 안에 작성 불가
* 함수의 흐름
- 함수호출 -> 함수실행후 -> 해당 함수를 호출한 곳으로 리턴한다
- 리턴할때 리턴되는 값이 없을경우 return명령어는 생략가능
- 리턴값은 오로지 1개만 리턴할수 있다.
리턴값이 있을경우 리턴값의 자료형을 써 줘야 한다
더이상 void형이 아님
------------------------------------------
#include <stdio.h>
void test()
{
printf("HAPPY");
return;
}//함수정의
void test2(int n)
{
printf("%d",n);
return;
}
void chart(int n,char ch)
{
for(int p=1; p<=n; p++)
{
printf("%c",ch);
}
return;
}
int abs(int n)
{
if(n<0)
return n*-1;
else
return n;
}
int fact(int n)
{
int gop=1;
int p;
for(p=n; p>=1; p--)
{
gop=gop*p;
}
return gop;
}
int max(int p,int q,int r)
{
int m;
m=(p<q) ? q : p ;
m=(m<r) ? r : m ;
return m;
}
void main()
{
//파라미터값이 없는 경우
//test(); //함수호출
//파라키터값이 1개 있는 경우
//test2(456);
//★문자를 8번찍는 함수 작성
//chart(8,'#');
//리턴값이 있을 경우
int res=abs(-5); //함수 호출
printf("%d",res);
//팩토리얼값 구하기
res=fact(5);
printf("%d",res);
//세개의 숫자 중에서 제일 큰 값 리턴
res=max(10,20,30);
printf("%d",res);
}
'..열심히 공부하세.. > C 입문' 카테고리의 다른 글
[10] 다차원 배열 (0) | 2012.05.31 |
---|---|
[정렬 알고리즘] (0) | 2012.05.29 |
[요일구하는 프로그램] (0) | 2012.05.25 |
[09] 배열 Array (0) | 2012.05.25 |
[08] while문, do~while문 (0) | 2012.05.25 |