*ํจ์
ํน์ ๊ธฐ๋ฅ์ ๋ํ ์ฌ์ฌ์ฉ์ฑ์ ๋ถ๊ฐํด ๊ฐ์ ๊ธฐ๋ฅ์ ์ฌ์ฉํ ๋ ์ฝ๋๊ฐ ๋ฐ๋ณต๋๋๊ฒ์ ์ค์ฌ์ฃผ๋ ๊ธฐ๋ฅ์
๋๋ค.
๋ฐํ์๋ฃํ ํจ์๋ช
(๋งค๊ฐ๋ณ์){
//์ํ๋ ๋ช
๋ น์ด
return ๋ฐํํ ๊ฐ;
}
|
*ํจ์ ์์ 1 : ๋ํ๊ธฐ ๊ธฐ๋ฅ ํจ์(add)
#include <stdio.h>
int add(int a , int b){
return a+b;
}
int main(void){
printf("%d\n", add(10,20));
}
*ํจ์ ์์ 2 : ์ฌ์น์ฐ์ฐ ํจ์ (calculator)
#include <stdio.h>
void calculator(int a , int b){
printf("%d + %d = %d\n", a, b, a+b);
printf("%d - %d = %d\n", a, b, a-b);
printf("%d * %d = %d\n", a, b, a*b);
printf("%d / %d = %d\n\n", a, b, a/b);
}
int main(void){
calculator(12,5);
calculator(3,9);
calculator(13,58);
}
* ์ฌ๊ทํจ์
์ฌ๊ทํจ์๋ ์๊ธฐ ์์ ์ ํฌํจํ๋ ํจ์๋ฅผ ์ด์ผ๊ธฐํฉ๋๋ค. ๋ฐ๋ผ์ ์๊ธฐ์์ ์ ๊ณ์ํด์ ๋ถ๋ฌ๋ด๊ธฐ ๋๋ฌธ์ ๋ฐ๋ณต๋ฌธ๊ณผ ์ ์ฌํ ํน์ง์ ๊ฐ์ง๊ณ ์์ผ๋ฉฐ, ๋ฐ๋ณต๋ฌธ๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก ๋ฌดํ๋ฃจํ์ ๋น ์ง์ง ์๊ธฐ ์ํด์๋ ์ข
๋ฃ ์กฐ๊ฑด์ด ํ์ํฉ๋๋ค.
*์ฌ๊ทํจ์ ์์ 1 : ํฉํ ๋ฆฌ์ผ ๊ตฌํ๊ธฐ
#include <stdio.h>
int factorial(int a){
if (a==1) return 1;
else return a* factorial(a-1);
}
int main(void){
int n;
printf("n! = ?\n");
scanf("%d", &n);
printf("%d\n", factorial(n));
}
factorial์ 5๋ฅผ ๋ฃ๊ฒ๋๋ฉด (factorial(5))
์ฐ์ฐ์ 5 * factorial(4) ๊ฐ๋ฉ๋๋ค.
๋ค์์ 5 * 4 * factorial(3)
๊ทธ๋ค์์ 5 * 4 * 3 * factorial(2) .....
์ด๋ฐ์์ผ๋ก ๋ง์ง๋ง์ ์ข
๋ฃ์กฐ๊ฑด , ์ฆ factorial(1)์ 1์ ๋ฐํํ์ฌ ๋ ์ด์ ์๊ธฐ์์ ์ ๋ถ๋ฌ์ค์ง ์๊ธฐ ๋๋ฌธ์
factorial(5) = 5 * 4 * 3 * 2 * 1 ๋ก ๋ง๋ฌด๋ฆฌ๋ฉ๋๋ค.