C 35

[C] scanf μ‚¬μš©λ²•

C μ–Έμ–΄μ—μ„œ scanf ν•¨μˆ˜λŠ” ν‘œμ€€ μž…λ ₯μœΌλ‘œλΆ€ν„° 값을 μ½μ–΄μ™€μ„œ λ³€μˆ˜μ— μ €μž₯ν•˜λŠ” ν•¨μˆ˜μ΄λ‹€. scanf ν•¨μˆ˜μ˜ 기본적인 μ‚¬μš©λ²•μ€ λ‹€μŒκ³Ό κ°™λ‹€: HTML μ‚½μž… 미리보기할 수 μ—†λŠ” μ†ŒμŠ€ μœ„μ˜ μ˜ˆμ œμ—μ„œ scanf ν•¨μˆ˜λŠ” 각각 μ •μˆ˜, μ‹€μˆ˜, 문자λ₯Ό μž…λ ₯λ°›μ•„ λ³€μˆ˜μ— μ €μž₯ν•˜κ³  좜λ ₯ν•˜λŠ” κΈ°λŠ₯을 μˆ˜ν–‰ν•œλ‹€. scanf ν•¨μˆ˜λŠ” ν˜•μ‹ μ§€μ •μžλ₯Ό μ‚¬μš©ν•˜μ—¬ 값을 μž…λ ₯받을 λ³€μˆ˜μ˜ νƒ€μž…μ„ μ§€μ •ν•œλ‹€. 일반적으둜 %dλŠ” μ •μˆ˜, %fλŠ” μ‹€μˆ˜, %cλŠ” 문자λ₯Ό μž…λ ₯λ°›λŠ” 데 μ‚¬μš©λœλ‹€. %d, %f, %c λ“± ν˜•μ‹ μ§€μ •μžλ₯Ό μ‚¬μš©ν•  λ•ŒλŠ” ν•΄λ‹Ή λ³€μˆ˜μ˜ μ£Όμ†Œ(&)λ₯Ό ν•¨κ»˜ 전달해야 ν•œλ‹€. μ΄λ ‡κ²Œ ν•˜λ©΄ scanf ν•¨μˆ˜κ°€ μž…λ ₯받은 값을 ν•΄λ‹Ή λ³€μˆ˜μ˜ λ©”λͺ¨λ¦¬ μœ„μΉ˜μ— μ €μž₯ν•  수 μžˆλ‹€. μ£Όμ˜ν•  점: scanf ν•¨μˆ˜λŠ” μ‚¬μš©μžμ˜ μž…λ ₯을 기닀리닀가 μž…λ ₯을 받을 λ•ŒκΉŒμ§€ μ‹€..

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

λŠ” C ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄μ—μ„œ μ‚¬μš©λ˜λŠ” ν‘œμ€€ 라이브러리 헀더 νŒŒμΌμ΄λ‹€. 이 헀더 νŒŒμΌμ—λŠ” λ©”λͺ¨λ¦¬ 관리, λ‚œμˆ˜ 생성, λ¬Έμžμ—΄ λ³€ν™˜, ν”„λ‘œμ„ΈμŠ€ μ œμ–΄ λ“±κ³Ό κ΄€λ ¨λœ ν•¨μˆ˜λ“€μ΄ μ •μ˜λ˜μ–΄ μžˆλ‹€. 헀더 νŒŒμΌμ— μ •μ˜λœ λͺ‡ 가지 μ€‘μš”ν•œ ν•¨μˆ˜λ“€μ€ λ‹€μŒκ³Ό κ°™λ‹€: malloc(), calloc(), realloc(), free(): 동적 λ©”λͺ¨λ¦¬ ν• λ‹Ήκ³Ό κ΄€λ ¨λœ ν•¨μˆ˜λ“€μ΄λ‹€. malloc()은 주어진 크기의 λ©”λͺ¨λ¦¬λ₯Ό ν• λ‹Ήν•˜κ³ , calloc()은 크기가 0으둜 μ΄ˆκΈ°ν™”λœ λ©”λͺ¨λ¦¬λ₯Ό ν• λ‹Ήν•œλ‹€. realloc()은 이미 ν• λ‹Ήλœ λ©”λͺ¨λ¦¬μ˜ 크기λ₯Ό μ‘°μ •ν•œλ‹€. free()λŠ” λ™μ μœΌλ‘œ ν• λ‹Ήλœ λ©”λͺ¨λ¦¬λ₯Ό ν•΄μ œν•œλ‹€. rand(), srand(): λ‚œμˆ˜ 생성과 κ΄€λ ¨λœ ν•¨μˆ˜λ“€μ΄λ‹€. rand()λŠ” 0λΆ€ν„° RAND_MAX μ‚¬μ΄μ˜ λ‚œμˆ˜λ₯Ό μƒμ„±ν•˜κ³ , srand()λŠ” λ‚œ..

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

은 C ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄μ—μ„œ μ‚¬μš©λ˜λŠ” 헀더 νŒŒμΌμ΄λ‹€. 이 헀더 νŒŒμΌμ—λŠ” C μ–Έμ–΄μ—μ„œ λΆˆλ¦¬μ–Έ(bool) νƒ€μž…κ³Ό κ΄€λ ¨λœ κΈ°λŠ₯이 μ •μ˜λ˜μ–΄ μžˆλ‹€. C μ–Έμ–΄λŠ” 기본적으둜 λΆˆλ¦¬μ–Έ νƒ€μž…μ„ μ œκ³΅ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. 헀더 νŒŒμΌμ„ ν¬ν•¨ν•˜λ©΄, bool νƒ€μž…κ³Ό κ΄€λ ¨λœ λ§€ν¬λ‘œλ“€μ„ μ‚¬μš©ν•  수 있게 λœλ‹€. 이 헀더 νŒŒμΌμ—λŠ” λ‹€μŒκ³Ό 같은 λ§€ν¬λ‘œλ“€μ΄ μ •μ˜λ˜μ–΄ μžˆλ‹€: bool: true와 false 값을 λ‚˜νƒ€λ‚΄λŠ” λΆˆλ¦¬μ–Έ νƒ€μž…μž…λ‹ˆλ‹€. true: μ°Έ(진싀)을 λ‚˜νƒ€λ‚΄λŠ” λ§€ν¬λ‘œμž…λ‹ˆλ‹€. false: 거짓을 λ‚˜νƒ€λ‚΄λŠ” λ§€ν¬λ‘œμž…λ‹ˆλ‹€. μ΄λŸ¬ν•œ λ§€ν¬λ‘œλ“€μ€ 쑰건문, 논리 μ—°μ‚° λ“±μ—μ„œ μ‚¬μš©λ  수 μžˆλ‹€. 예λ₯Ό λ“€μ–΄, λ‹€μŒκ³Ό 같이 bool νƒ€μž…μ„ μ‚¬μš©ν•˜μ—¬ λ³€μˆ˜λ₯Ό μ„ μ–Έν•˜κ³  μ΄ˆκΈ°ν™”ν•  수 μžˆλ‹€: HTML μ‚½μž… 미리보기할 수 μ—†λŠ” μ†ŒμŠ€ 헀더 νŒŒμΌμ€ C99 ν‘œμ€€μ—μ„œ λ„μž…λ˜μ—ˆμœΌ..

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

λŠ” C ν”„λ‘œκ·Έλž˜λ°μ—μ„œ ν‘œμ€€ μž…λ ₯κ³Ό 좜λ ₯을 닀루기 μœ„ν•œ 헀더 νŒŒμΌμ΄λ‹€. "stdio"λŠ” "Standard Input/Output"의 μ•½μžλ‘œ, ν‘œμ€€ μž…μΆœλ ₯을 κ΄€λ¦¬ν•˜λŠ” ν•¨μˆ˜λ“€μ„ ν¬ν•¨ν•˜κ³  μžˆλ‹€. 헀더 νŒŒμΌμ€ λ‹€μ–‘ν•œ μž…μΆœλ ₯ κ΄€λ ¨ ν•¨μˆ˜λ“€κ³Ό 맀크둜 μƒμˆ˜λ“€μ„ μ œκ³΅ν•œλ‹€. λͺ‡ 가지 ν”νžˆ μ‚¬μš©λ˜λŠ” ν•¨μˆ˜μ™€ μƒμˆ˜λ₯Ό μ‚΄νŽ΄λ³΄κ² λ‹€: printf: 화면에 좜λ ₯을 μœ„ν•œ ν•¨μˆ˜λ‘œ, μ„œμ‹ μ§€μ •μžλ₯Ό μ‚¬μš©ν•˜μ—¬ λ³€μˆ˜μ˜ 값을 ν¬λ§·νŒ…ν•˜μ—¬ 좜λ ₯ν•  수 μžˆλ‹€. scanf: μ‚¬μš©μžμ˜ μž…λ ₯을 λ°›κΈ° μœ„ν•œ ν•¨μˆ˜λ‘œ, μ„œμ‹ μ§€μ •μžλ₯Ό μ‚¬μš©ν•˜μ—¬ μž…λ ₯ 값을 λ³€μˆ˜μ— μ €μž₯ν•  수 μžˆλ‹€. getchar: ν•œ 문자λ₯Ό μž…λ ₯ λ°›κΈ° μœ„ν•œ ν•¨μˆ˜λ‘œ, ν‚€λ³΄λ“œλ‘œλΆ€ν„° ν•œ κΈ€μžλ₯Ό μ½μ–΄μ˜¨λ‹€. putchar: ν•œ 문자λ₯Ό 좜λ ₯ν•˜κΈ° μœ„ν•œ ν•¨μˆ˜λ‘œ, 화면에 ν•œ κΈ€μžλ₯Ό 좜λ ₯ν•œλ‹€. fgets: λ¬Έμžμ—΄μ„ μž…λ ₯ ..

[C] ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ 슀쿨_1μ£Όμ°¨ 문제1: 숫자 λΉ„κ΅ν•˜κΈ°

[1] 문제 문제 μ„€λͺ… μ •μˆ˜ num1κ³Ό num2κ°€ λ§€κ°œλ³€μˆ˜λ‘œ μ£Όμ–΄μ§‘λ‹ˆλ‹€. 두 μˆ˜κ°€ κ°™μœΌλ©΄ 1 λ‹€λ₯΄λ©΄ -1을 retrunν•˜λ„λ‘ solution ν•¨μˆ˜λ₯Ό μ™„μ„±ν•΄μ£Όμ„Έμš”. μ œν•œμ‚¬ν•­ 0 ≤ num1 ≤ 10,000 0 ≤ num2 ≤ 10,000 μž…μΆœλ ₯ 예 num1 num2 result 2 3 -1 11 11 1 7 99 -1 μž…μΆœλ ₯ 예 μ„€λͺ… μž…μΆœλ ₯ 예 μ„€λͺ… #1 num1이 2이고 num2κ°€ 3μ΄λ―€λ‘œ λ‹€λ¦…λ‹ˆλ‹€. λ”°λΌμ„œ -1을 returnν•©λ‹ˆλ‹€. μž…μΆœλ ₯ 예 μ„€λͺ… #2 num1이 11이고 num2κ°€ 11μ΄λ―€λ‘œ κ°™μŠ΅λ‹ˆλ‹€. λ”°λΌμ„œ 1을 returnν•©λ‹ˆλ‹€. μž…μΆœλ ₯ 예 μ„€λͺ… #3 num1이 7이고 num2κ°€ 99μ΄λ―€λ‘œ λ‹€λ¦…λ‹ˆλ‹€. λ”°λΌμ„œ -1을 returnν•©λ‹ˆλ‹€. [2] μ •λ‹΅ HTML μ‚½μž… 미리보기할 수 μ—†λŠ” μ†ŒμŠ€ [3] 해석..