함수
함수의 개요
함수의 개념
-
특정한 작업을 처리하기 위한 코드들의 집합
int sum(int n);: 1 ~ n까지의 합을 반환int average(int n);: n개 데이터에 대한 평균을 반환void print_menu();: 프로그램 실행을 위한 메뉴 출력void factorial(int n);: n의 팩토리얼 출력
함수의 종류
- 라이브러리 함수
- C프로그램에서 기본적으로 제공되는 함수
- 사용자 정의 함수
- 사용자가 필요에 의하여 정의하는 함수
함수의 활용
사용자 정의 함수
함수의 형식
-
반환되는 데이터 타입, 함수 이름, 매개변수, 반환 값 등을 명시
-
main 함수 안에서 호출되며, 사용자 정의 함수는 미리 정의되어야 함
-
//n수 만큼 n을 출력하는 함수void print_n(int n) {
for (int i = 1; i <= n; i++) {
printf("%d ", i);
}
printf("\n");
}- void : 반환되는 데이터 타입, 만일 int 등의 반환 타입이 있을 경우 return.. 의 형식으로 값을 반환
- print_n : 함수 이름
- int n : 매개변수, 함수 호출 시 전달되는 값
재귀 함수
- 함수 자신을 반복하여 호출하여 실행하는 함수
라이브러리 함수
- 미리 제공되어 컴파일러가 인식할 수 있는 함수
- 헤더파일에 사용할 함수가 포함되어 있는 헤더파일을 선언해야 함
#include <stdio.h>
-
문자열 변환
atof: 문자열을 double 형으로 변환함atoi: 문자열을 정수형으로 변환함atol: 문자열을 long 형 정수로 변환함strtod: 문자열을 double 형으로 변환함strtol: 문자열을 long 형 정수로 변환함strtoul: 문자열을 unsigned long 형 정수로 변환함
-
난수 생성 함수
rand: 난수 생성 함수srand: 난수 생성을 위한 초기값을 설정함
-
동적 할당 관련 함수
calloc: 메모리에서 배열을 위한 공간을 할당함free: 메모리에서 공간을 사용 해제함malloc: 메모리에서 공간을 할당함realloc: 메모리에서 공간을 재할당 함
-
math.h
분류 함수 설명 삼각함수 double sin(double x)사인 값 계산 double cos(double x)코사인 값 계산 double tan(double x)탄젠트 값 계산