ํจ์ : ๊ฐ์ ์ ๋ ฅ๋ฐ์ ์ด๋ค ์์ ์ ํ ํ ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ์ถ๋ ฅํ๋ ๊ฒ
๋ฐํํ ํจ์๋ช
(์ ๋ฌ๊ฐ); // ํจ์ ์ ์ธ
int main(void){
ํจ์๋ช
(์ ๋ฌ๊ฐ); // ํจ์ ํธ์ถ
}
๋ฐํํ ํจ์๋ช
(์ ๋ฌ๊ฐ){ // ํจ์ ์ ์
// ์ํํ ๋ฌธ์ฅ
}
์์น ์ฃผ์. main ์ ์๋๋ก ๋๋๋ค.
์ฌ์น์ฐ์ฐ ์์
#include <stdio.h>
void p(int num);
int main(void) {
int num = 2;
p(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);
}
ํจ์๋ฅผ ์ฌ์ฉํ๋ ์ด์ 2๊ฐ์ง
1. ์ฝ๋ ์ค๋ณต์ ๋ฐฉ์งํ๊ณ ํจ์จ์ ์ผ๋ก ํ๋ก๊ทธ๋๋ฐ ๊ฐ๋ฅ
2. ๋ค๋ฅธ ํ๋ก์ ํธ์ ์ฌ์ฌ์ฉ๊ฐ๋ฅ
์ฌ์ฉ์ ์ ์ ํจ์
cf. ํ์คํจ์ : C์ธ์ด์ ์ด๋ฏธ ๋ง๋ค์ด์ ธ ์์ด์ ํ๋ก๊ทธ๋จ์ ์์ฑํ ๋ ํ์์ ๋ง์ถฐ ๊ฐ์ ธ๋ค ์ฐ๊ธฐ๋ง ํ๋ฉด ๋๋ค.
์) printf(), scanf(), rand() ํจ์ ๋ฑ
= ํ์ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ ํจ์, ๋ด์ฅ ํจ์, ์์คํ ์ ๊ณต ํจ์
์ฌ์ฉ์ ์ ์ ํจ์
- ์ฌ์ฉ์๊ฐ ์ง์ ๋ง๋ค์ด ์ ์ํด ์ฌ์ฉํ๋ ํจ์. ์ด๋ค ์์ ์ ๋ฐ๋ณตํด์ผ ํ ๋ ์ฌ์ฉ. ์) p() ํจ์
- ํจ์ ์ ์ธ๊ณผ ํจ์ ์ ์ ํ์์ด ์ฌ์ฉ์ ์ ์ ํจ์๋ฅผ ๋ง๋๋ ๋ฐฉ๋ฒ
์ฉ์ด์ ๋ฆฌ
void box(int num){
return num + 4;
}
void : ๋ฐํํ
box : ํจ์๋ช
int num : ๋งค๊ฐ๋ณ์
num + 4 : ๋ฐํ๊ฐ
void ๋ฐํํ : ์๋ฌด๊ฒ๋ ๋ฐํํ์ง ์๊ฒ ๋ค.
ํจ์์ ์ข ๋ฅ
1. ๋ฐํ๊ฐ์ด ์๋ ํจ์
- ๋ฐํํ์ void๋ก ์ ์ธํ ํจ์
#include <stdio.h>
void function_without_return();
int main(void) {
function_without_return();
return 0;
}
void function_without_return() {
printf("๋ฐํ๊ฐ์ด ์๋ ํจ์\n");
}
2. ๋ฐํ๊ฐ์ด ์๋ ํจ์
#include <stdio.h>
int function_with_return();
void p(int num);
int main(void) {
int ret = function_with_return(); // ๋ฐํ๊ฐ์ด ์๋ ํจ์ ํธ์ถ
p(ret);
return 0;
}
int function_with_return() {
printf("๋ฐํ๊ฐ์ด ์๋ ํจ์\n");
return 10;
}
void p(int num) {
printf("num์ %d์
๋๋ค.\n", num);
}
3. ์ ๋ฌ๊ฐ์ด ์๋ ํจ์ (๋งค๊ฐ๋ณ์X)
4. ์ ๋ฌ๊ฐ์ด ์๋ ํจ์ (๋งค๊ฐ๋ณ์O)
๋งค๊ฐ๋ณ์์ ์ธ์
๋งค๊ฐ๋ณ์ : ํจ์๋ฅผํธ์ถํ ๋ ์ ๋ฌ๋๋ ๊ฐ์ด ์ ์ฅ๋๋ ๋ณ์
์ธ์ : ํจ์๋ฅผ ํธ์ถํ ๋ ์ ๋ฌํ๋ ๊ฐ์ด๋ ๋ณ์
5. ๋ฐํ๊ฐ๊ณผ ์ ๋ฌ๊ฐ์ด ์๋ ํจ์
#include <stdio.h>
int apple(int total, int ate);
int main(void) {
int ret = apple(5, 2);
printf("๋จ์ ์ฌ๊ณผ์ ๊ฐ์๋ : %d\n", ret);
printf("๋จ์ ์ฌ๊ณผ์ ๊ฐฏ์๋ : %d\n", apple(10,4));
return 0;
}
int apple(int total, int ate) {
return total - ate;
}
C์์๋ ์ ๋ฌ๊ฐ์ ์๊ด์์ด ๋์ผํ ์ด๋ฆ์ ํจ์๋ฅผ ์ค๋ณตํด์ ์ฌ์ฉํ ์ ์๋ค.
๋น๋ฐ๋ฒํธ ๋ง์ถ๊ธฐ ๊ฒ์
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
int getRandomNumber(int level);
void ShowQuestion(int level, int num1, int num2);
void success();
void fail();
int main(void) {
srand(time(NULL));
int num1, num2;
int answer = -1;
int count = 0;
for (int i = 1; i <= 5; ++i) {
num1 = getRandomNumber(i);
num2 = getRandomNumber(i);
ShowQuestion(i, num1, num2);
scanf_s("%d", &answer);
if (answer == -1) {
printf("ํ๋ก๊ทธ๋จ์ ์ข
๋ฃํฉ๋๋ค\n");
exit(0);
}
else if (answer == num1 * num2) {
count++;
success();
}
else {
fail();
}
}
printf("%d๊ฐ๋ฅผ ๋งํ์ต๋๋ค\n", count);
return 0;
}
int getRandomNumber(int level) {
return rand() % (level * 9) + 1;
}
void ShowQuestion(int level, int num1, int num2) {
printf("%d๋ฒ์งธ ๋น๋ฐ๋ฒํธ\n", level);
printf("%d * %d ? \n", num1, num2);
printf("๋น๋ฐ๋ฒํธ๋ฅผ ์
๋ ฅํ์ธ์ (์ข
๋ฃ๋ฅผ ์ํ๋ฉด -1์ ์
๋ ฅ)\n");
}
void success() {
printf("๋ง์ท์ต๋๋ค\n");
}
void fail() {
printf("ํ๋ ธ์ต๋๋ค\n");
}
exit(0)
ํ์ฌ ์คํ ์ค์ธ ํ๋ก๊ทธ๋จ์ ์ข ๋ฃํ๋ ํจ์. ์๊ดํธ์ ๋ฃ๋ ์ ๋ฌ๊ฐ์ ๋ฐ๋ผ ์ข ๋ฃ ์๋ฏธ๊ฐ ๋ค๋ฅด๋ค.
0์ ์ ์์ข ๋ฃ, ๋ค๋ฅธ ์ซ์๋ ์ค๋ฅ ๋ฐ์์ผ๋ก ์ธํ ์ข ๋ฃ
stdilb.h ํค๋ํจ์์ ํฌํจ๋ ํจ์
์ํ ์์ ์๊ฐ ๋ณํ
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
int convert_time_hour(int min);
int convert_time_min(int min);
int main(void) {
int runningTime, hour, min;
srand(time(NULL));
runningTime = rand() % 200 + 100;
hour = convert_time_hour(runningTime);
min = convert_time_min(runningTime);
printf("์์์๊ฐ์ ์ด %d๋ถ. ํ์ฐ ์ %d์ %d๋ถ ์
๋๋ค.", runningTime, hour, min);
return 0;
}
int convert_time_hour(int min) {
return min / 60;
}
int convert_time_min(int min) {
return min % 60;
}
'๐ฉโ๐ป ํ๋ก๊ทธ๋๋ฐ > ๐ญ C' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[C] ํฌ์ธํฐ | ๊ฐ์ ์ํ ํธ์ถ | ์ฐธ์กฐ์ ์ํ ํธ์ถ | clock() | ํ์ ํํฌ (0) | 2023.10.12 |
---|---|
[C] ๋ฐฐ์ด | null | sizeof() | ์์คํค์ฝ๋ (0) | 2023.09.10 |
[C] ์กฐ๊ฑด๋ฌธ | ๋์ ์์ฑํ๊ธฐ | switch๋ฌธ (1) | 2023.09.06 |
[C] ๋ฐ๋ณต๋ฌธ (0) | 2023.08.22 |
[C] ๋ณ์ | scanf, printf (0) | 2023.08.16 |