SWLUG/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์Šค์ฟจ (C)

[C] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์Šค์ฟจ_1์ฃผ์ฐจ ๋ฌธ์ œ2: ๋‘ ์ˆ˜์˜ ํ•ฉ

waterproof 2023. 7. 8. 01:59

 
 
 
 


[1] ๋ฌธ์ œ

 

๋ฌธ์ œ ์„ค๋ช…

์ •์ˆ˜ num1๊ณผ num2๊ฐ€ ์ฃผ์–ด์งˆ ๋•Œ, num1๊ณผ num2์˜ ํ•ฉ์„ returnํ•˜๋„๋ก soltuion ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด์ฃผ์„ธ์š”.
 

์ œํ•œ์‚ฌํ•ญ

  • -50,000 ≤ num1 ≤ 50,000
  • -50,000 ≤ num2 ≤ 50,000

 

์ž…์ถœ๋ ฅ ์˜ˆ

num1 num2 result
2 3 5
100 2 102

 
์ž…์ถœ๋ ฅ ์˜ˆ ์„ค๋ช…

์ž…์ถœ๋ ฅ ์˜ˆ #1

  • num1์ด 2์ด๊ณ  num2๊ฐ€ 3์ด๋ฏ€๋กœ 2 + 3 = 5๋ฅผ returnํ•ฉ๋‹ˆ๋‹ค.

 
์ž…์ถœ๋ ฅ ์˜ˆ #2

  • num1์ด 100์ด๊ณ  num2๊ฐ€ 2์ด๋ฏ€๋กœ 100 + 2 = 102๋ฅผ returnํ•ฉ๋‹ˆ๋‹ค.

 
 


[2] ์ •๋‹ต

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#includeย <stdio.h>
#includeย <stdbool.h>
#includeย <stdlib.h>
ย 
intย solution(intย num1,ย intย num2)ย {
ย ย ย ย intย answerย =ย -1;
ย ย ย ย answerย =ย num1ย +ย num2;
ย ย ย ย returnย answer;
}
ย 
intย main()ย {
ย ย ย ย intย num1,ย num2;
ย ย ย ย printf("๋‘ย ์ •์ˆ˜๋ฅผย ์ž…๋ ฅํ•˜์„ธ์š”.:");
ย ย ย ย scanf("%dย %d",ย &num1,ย &num2);
ย ย ย ย 
ย ย ย ย intย resultย =ย solution(num1,ย num2);
ย ย ย ย printf("๋‘ย ์ •์ˆ˜์˜ย ํ•ฉ:ย %d\n",ย result);
ย ย ย ย 
ย ย ย ย returnย 0;
}
cs

 
 
 


[3] ํ•ด์„

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#includeย <stdio.h>ย //ย ํ‘œ์ค€ย ์ž…๋ ฅย ๋ฐย ์ถœ๋ ฅย ํ•จ์ˆ˜๋ฅผย ์‚ฌ์šฉํ•˜๊ธฐย ์œ„ํ•œย ํ—ค๋”ย ํŒŒ์ผ
#includeย <stdbool.h>ย //ย ๋ถˆ๋ฆฌ์–ธย ํƒ€์ž…์„ย ์‚ฌ์šฉํ•˜๊ธฐย ์œ„ํ•œย ํ—ค๋”ย ํŒŒ์ผ
#includeย <stdlib.h>ย //ย ์ผ๋ฐ˜์ ์ธย ์œ ํ‹ธ๋ฆฌํ‹ฐย ํ•จ์ˆ˜๋ฅผย ์‚ฌ์šฉํ•˜๊ธฐย ์œ„ํ•œย ํ—ค๋”ย ํŒŒ์ผ
ย 
//ย ๋‘ย ์ •์ˆ˜์˜ย ํ•ฉ์„ย ๊ณ„์‚ฐํ•˜์—ฌย ๋ฐ˜ํ™˜ํ•˜๋Š”ย ํ•จ์ˆ˜
intย solution(intย num1,ย intย num2)ย {
ย ย ย ย intย answerย =ย -1;ย //ย ์ดˆ๊ธฐํ™”๋œย ๋‹ตย ๋ณ€์ˆ˜
ย ย ย ย answerย =ย num1ย +ย num2;ย //ย ๋‘ย ์ •์ˆ˜์˜ย ํ•ฉ์„ย ๊ณ„์‚ฐํ•˜์—ฌย answerย ๋ณ€์ˆ˜์—ย ์ €์žฅ
ย ย ย ย returnย answer;ย //ย ๊ฒฐ๊ณผ๊ฐ’ย ๋ฐ˜ํ™˜
}
ย 
//ย ๋ฉ”์ธย ํ•จ์ˆ˜
intย main()ย {
ย ย ย ย intย num1,ย num2;ย //ย ๋‘ย ์ •์ˆ˜๋ฅผย ์ž…๋ ฅ๋ฐ›์„ย ๋ณ€์ˆ˜
ย ย ย ย printf("๋‘ย ์ •์ˆ˜๋ฅผย ์ž…๋ ฅํ•˜์„ธ์š”:");ย //ย ์‚ฌ์šฉ์ž์—๊ฒŒย ์ž…๋ ฅย ์•ˆ๋‚ดย ๋ฉ”์‹œ์ง€ย ์ถœ๋ ฅ
ย ย ย ย scanf("%dย %d",ย &num1,ย &num2);ย //ย ์‚ฌ์šฉ์ž๋กœ๋ถ€ํ„ฐย ๋‘ย ์ •์ˆ˜ย ์ž…๋ ฅย ๋ฐ›์Œ
ย ย ย ย 
ย ย ย ย intย resultย =ย solution(num1,ย num2);ย //ย solutionย ํ•จ์ˆ˜ย ํ˜ธ์ถœํ•˜์—ฌย ๊ฒฐ๊ณผ๊ฐ’์„ย resultย ๋ณ€์ˆ˜์—ย ์ €์žฅ
ย ย ย ย printf("๋‘ย ์ •์ˆ˜์˜ย ํ•ฉ:ย %d\n",ย result);ย //ย ๊ฒฐ๊ณผ๊ฐ’ย ์ถœ๋ ฅ
ย ย ย ย 
ย ย ย ย returnย 0;ย //ย ํ”„๋กœ๊ทธ๋žจย ์ข…๋ฃŒ
}
cs

 
์œ„์˜ ์ฝ”๋“œ๋Š” ๋‘ ๊ฐœ์˜ ์ •์ˆ˜๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ solution ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ ๋‘ ์ •์ˆ˜์˜ ํ•ฉ์„ ๊ณ„์‚ฐํ•˜๊ณ  ์ถœ๋ ฅํ•˜๋Š” ๊ฐ„๋‹จํ•œ ํ”„๋กœ๊ทธ๋žจ์ด๋‹ค.
 
ํ”„๋กœ๊ทธ๋žจ์˜ ์‹คํ–‰ ํ๋ฆ„์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค:
 
1. main ํ•จ์ˆ˜๊ฐ€ ์‹œ์ž‘๋œ๋‹ค.
2. num1๊ณผ num2 ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•œ๋‹ค. ์ด ๋ณ€์ˆ˜๋“ค์€ ์‚ฌ์šฉ์ž๋กœ๋ถ€ํ„ฐ ์ž…๋ ฅ๋ฐ›์„ ๋‘ ๊ฐœ์˜ ์ •์ˆ˜๋ฅผ ์ €์žฅํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋œ๋‹ค.
3. ์‚ฌ์šฉ์ž์—๊ฒŒ "๋‘ ์ •์ˆ˜๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”:"๋ผ๋Š” ๋ฉ”์‹œ์ง€๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.
4. scanf ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์šฉ์ž๋กœ๋ถ€ํ„ฐ ๋‘ ๊ฐœ์˜ ์ •์ˆ˜๋ฅผ ์ž…๋ ฅ๋ฐ›๋Š”๋‹ค. ์ž…๋ ฅ๋ฐ›์€ ๊ฐ’๋“ค์€ num1๊ณผ num2 ๋ณ€์ˆ˜์— ๊ฐ๊ฐ ์ €์žฅ๋œ๋‹ค.
5. solution ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ num1๊ณผ num2์˜ ํ•ฉ์„ ๊ณ„์‚ฐํ•˜๊ณ  ๊ฒฐ๊ณผ๊ฐ’์„ result ๋ณ€์ˆ˜์— ์ €์žฅํ•œ๋‹ค.
6. "๋‘ ์ •์ˆ˜์˜ ํ•ฉ: "์ด๋ผ๋Š” ๋ฉ”์‹œ์ง€์™€ ํ•จ๊ป˜ result ๋ณ€์ˆ˜์˜ ๊ฐ’์„ ์ถœ๋ ฅํ•œ๋‹ค.
7. ํ”„๋กœ๊ทธ๋žจ์ด ์ข…๋ฃŒ๋œ๋‹ค.
 
์ด ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ์‚ฌ์šฉ์ž๋กœ๋ถ€ํ„ฐ ๋‘ ๊ฐœ์˜ ์ •์ˆ˜๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ ๊ทธ ํ•ฉ์„ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์ด ๋™์ž‘ํ•œ๋‹ค.
 
 
 


[4] ํ’€์ด ๊ณผ์ •

 
โœ”๏ธ int answer = -1; ๋กœ ์ดˆ๊ธฐํ™” ํ•ด์ฃผ๊ณ  ๋‹ค์Œ ์ค„์— int answer = num1 + num2; ๋กœ ์ค‘๋ณต ์„ ์–ธํ•ด์„œ ํ‹€๋ ธ์—ˆ๋‹ค.
 
โœ”๏ธ 'scanf' ํ•จ์ˆ˜๋Š” ํ˜•์‹ ์ง€์ •์ž ์‚ฌ์ด์— ์‰ผํ‘œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์—ฌ๋Ÿฌ ๋ณ€์ˆ˜๋ฅผ ์ž…๋ ฅ๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค. ์‰ผํ‘œ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  scanf("%d %d", &num1 &num2); ์ด๋ ‡๊ฒŒ ์ž…๋ ฅํ•ด์„œ ํ‹€๋ ธ์—ˆ๋‹ค.
 
 
 


[5] ์ถ”๊ฐ€ ๊ณต๋ถ€

 

โœ๏ธ <stdio.h> ๋ž€?: https://exponent.tistory.com/40

 

[C] <stdio.h>๋ž€?

๋Š” C ํ”„๋กœ๊ทธ๋ž˜๋ฐ์—์„œ ํ‘œ์ค€ ์ž…๋ ฅ๊ณผ ์ถœ๋ ฅ์„ ๋‹ค๋ฃจ๊ธฐ ์œ„ํ•œ ํ—ค๋” ํŒŒ์ผ์ด๋‹ค. "stdio"๋Š” "Standard Input/Output"์˜ ์•ฝ์ž๋กœ, ํ‘œ์ค€ ์ž…์ถœ๋ ฅ์„ ๊ด€๋ฆฌํ•˜๋Š” ํ•จ์ˆ˜๋“ค์„ ํฌํ•จํ•˜๊ณ  ์žˆ๋‹ค. ํ—ค๋” ํŒŒ์ผ์€ ๋‹ค์–‘ํ•œ ์ž…์ถœ๋ ฅ ๊ด€๋ จ ํ•จ

exponent.tistory.com

 
โœ๏ธ <stdbool.h> ๋ž€?: https://exponent.tistory.com/41

 

[C] <stdbool.h> ๋ž€?

์€ C ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์—์„œ ์‚ฌ์šฉ๋˜๋Š” ํ—ค๋” ํŒŒ์ผ์ด๋‹ค. ์ด ํ—ค๋” ํŒŒ์ผ์—๋Š” C ์–ธ์–ด์—์„œ ๋ถˆ๋ฆฌ์–ธ(bool) ํƒ€์ž…๊ณผ ๊ด€๋ จ๋œ ๊ธฐ๋Šฅ์ด ์ •์˜๋˜์–ด ์žˆ๋‹ค. C ์–ธ์–ด๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ๋ถˆ๋ฆฌ์–ธ ํƒ€์ž…์„ ์ œ๊ณตํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํ—ค๋”

exponent.tistory.com

 
โœ๏ธ <stdlib.h> ๋ž€?: https://exponent.tistory.com/42

 

[C] <stdlib.h> ๋ž€?

๋Š” C ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์—์„œ ์‚ฌ์šฉ๋˜๋Š” ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ํ—ค๋” ํŒŒ์ผ์ด๋‹ค. ์ด ํ—ค๋” ํŒŒ์ผ์—๋Š” ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ, ๋‚œ์ˆ˜ ์ƒ์„ฑ, ๋ฌธ์ž์—ด ๋ณ€ํ™˜, ํ”„๋กœ์„ธ์Šค ์ œ์–ด ๋“ฑ๊ณผ ๊ด€๋ จ๋œ ํ•จ์ˆ˜๋“ค์ด ์ •์˜๋˜์–ด ์žˆ๋‹ค. ํ—ค๋” ํŒŒ์ผ์—

exponent.tistory.com

 
โœ๏ธ scanf ์‚ฌ์šฉ๋ฒ•: https://exponent.tistory.com/43
 

 

[C] scanf ์‚ฌ์šฉ๋ฒ•

C ์–ธ์–ด์—์„œ scanf ํ•จ์ˆ˜๋Š” ํ‘œ์ค€ ์ž…๋ ฅ์œผ๋กœ๋ถ€ํ„ฐ ๊ฐ’์„ ์ฝ์–ด์™€์„œ ๋ณ€์ˆ˜์— ์ €์žฅํ•˜๋Š” ํ•จ์ˆ˜์ด๋‹ค. scanf ํ•จ์ˆ˜์˜ ๊ธฐ๋ณธ์ ์ธ ์‚ฌ์šฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค: HTML ์‚ฝ์ž… ๋ฏธ๋ฆฌ๋ณด๊ธฐํ•  ์ˆ˜ ์—†๋Š” ์†Œ์Šค ์œ„์˜ ์˜ˆ์ œ์—์„œ scanf ํ•จ์ˆ˜๋Š”

exponent.tistory.com


[6] ๋Š๋‚€ ์ 

 

'scanf' ํ•จ์ˆ˜๋Š” ํ˜•์‹ ์ง€์ •์ž ์‚ฌ์ด์— ์‰ผํ‘œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์—ฌ๋Ÿฌ ๋ณ€์ˆ˜๋ฅผ ์ž…๋ ฅ๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค๋Š” ํŠน์ง•๊ณผ ๊ฐ™์€ ๊ธฐ๋ณธ์ ์ธ ๋‚ด์šฉ์„ ์žŠ๋‹ค๋‹ˆ... ์—ญ์‹œ ๋ณต์Šต์ด ์ค‘์š”ํ•˜๋‹ค.