목차
18. 함수
18. 함수
함수를 선언 할때는 먼저
main 함수 위쪽에서 선언을 해주고, 예) void a(int num);
main 함수 아래쪽에서 똑같은 함수 선언문을 중괄호로 감싸줍니다.
예) void a(int num) { }
void p(int num); // 선언
int main(void)
{
int num = 2;
p(num);
num = num + 3;
p(num);
num -= 1;
p(num);
num *= 3;
p(num);
num /= 6;
p(num);
return 0;
}
// 정의
void p(int num)
{
printf("num은 %d 입니다.\n", num);
}
함수의 생김새는
반환형 함수이름 (전달값)
{
}
으로 구성되어있습니다.
반환형에 int,float,char,등 여러가지 타입으로 반환 할 수도있고,
반환을 하지 않겠다라고 하면 void를 사용하시면 됩니다.
void는 아무것도 없다는 뜻입니다.
그리고 전달값에는 여러개의 값을 넣을 수 있고,
전달값은 main문 위에 선언한 부분과 똑같아야합니다.
// 선언
void p(int num);
void function_without_return(); // 반환값이 없는 함수
int function_with_return(); // 반환값이 있는 함수
void function_without_params(); // 파라미터(전달값)이 없는 함수
void function_with_params(int num1, int num2, int num3); // 파라미터(전달값)이 있는 함수
int apple(int total, int ate); // 전체 total 개에서 ate 개를 먹고 남은 수를 반환
// 파라미터(전달값)도 받고, 반환값이 있는 함수
int main(void)
{
function_without_return();
int ret1 = function_with_return();
p(ret1);
function_without_params();
function_with_params(35, 27, 12);
int ret2 = apple(5, 2);
//printf("사과 5개 중에 2개를 먹으면? %d 개가 남아요\n", ret2);
printf("사과 %d개 중에 %d개를 먹으면? %d 개가 남아요\n", 10,4,apple(10,4));
return 0;
}
// 정의
void p(int num)
{
printf("num은 %d 입니다.\n", num);
}
void function_without_return()
{
printf("반환값이 없는 함수입니다.\n");
}
int function_with_return()
{
printf("반환값이 있는 함수입니다.\n");
return 10;
}
void function_without_params()
{
printf("전달값이 없는 함수입니다.\n");
}
void function_with_params(int num1, int num2, int num3)
{
printf("전달값이 있는 함수이며, 전달받은 값은 %d, %d, %d, 입니다.\n", num1, num2, num3);
}
int apple(int total, int ate)
{
printf("전달값과 반환값이 있는 함수입니다.\n");
return total - ate;
}
함수를 이용해 계산기를 만들어 보겠습니다.
void p(int num);
int add(int num1, int num2);
int sub(int num1, int num2);
int mul(int num1, int num2);
int div(int num1, int num2);
int main(void)
{
int num = 2;
num = add(num, 3);
p(num);
num = sub(num, 1);
p(num);
num = mul(num, 3);
p(num);
num = div(num, 6);
p(num);
return 0;
}
void p(int num)
{
printf("num은 %d 입니다.\n", num);
}
int add(int num1, int num2)
{
return num1 + num2;
}
int sub(int num1, int num2)
{
return num1 - num2;
}
int mul(int num1, int num2)
{
return num1 * num2;
}
int div(int num1, int num2)
{
return num1 / num2;
}
'C' 카테고리의 다른 글
C언어(7) 기초7 (0) | 2024.11.16 |
---|---|
C언어(6) 기초6 (0) | 2024.11.13 |
C언어(4) 기초4 (0) | 2024.11.11 |
C언어(3) 기초3 (0) | 2024.11.08 |
C언어(2) 기초2 (0) | 2024.11.05 |