โ 1. ํ์ค ์ ์ถ๋ ฅ์ ๊ฐ๋
(1) C ํ๋ก๊ทธ๋จ๊ณผ ํจ์

- stdlib.h ํค๋ ํ์ผ์ EXIT_SUCCESS ๋ 0์ผ๋ก ๋์ด์์. ์ฆ, return 0 ์.
- ์ผ๋ฐ์ ์ธ ํจ์์์๋ ๋ฐํ๊ฐ์ด ์กด์ฌํ ๋ return ์ผ๋ก ์๋ฃํ์ ๋ง๋ ๋ฐํ๊ฐ์ ๋๊ฒจ์ค์ผํจ.
- ํ์ง๋ง main() ํจ์์์๋ ๋ฐํ๊ฐ์ด ์กด์ฌํ ๋ return์ ์ํด์ค๋ return 0; ๋ฌธ์๋ฅผ ์๋์ผ๋ก ๋ฃ์ด์ฃผ๊ฒ๋จ.
- int argc: ํฐ๋ฏธ๋๋ก ๋๊ธฐ๋ ๋จ์ด์ ๊ฐฏ์๋ฅผ ๋ณด๋ด์ค
- char* argv[]: ์ด๊ฒ๋ ๋จ์ด ๋๊ฐ๋ฅผ ๋ฐฐ์ด์ ํ๋์ฉ ๋ด์์ ๋ณด๋ด์ค.
(2) ํ์ค ์ ์ถ๋ ฅ์ ๊ฐ๋

- ํ์ค ์ ๋ ฅ(stdin) ๊ณผ ํ์ค ์ถ๋ ฅ(stdout) ์ด ์์.
โ 2. ํ์ํ ์ ์ถ๋ ฅํจ์
(1) printf() ํจ์

[ printf() ํจ์ ์์ ]
#include <stdio.h>
int main() {
char c = 'A';
int i = 10, j = 20, k = 30;
printf("๊ฐ๋จํ ์ถ๋ ฅ ํ๋ก๊ทธ๋จ\n");
printf("'%c'์ ASCII ์ฝ๋๊ฐ์ %d\n", c, c);
printf("i=%d, j=%d, k=%d\n", i, j, k);
}
// [ ์ถ๋ ฅ ๊ฒฐ๊ณผ๊ฐ ]
// ๊ฐ๋จํ ์ถ๋ ฅ ํ๋ก๊ทธ๋จ
// 'A'์ ASCII ์ฝ๋๊ฐ์ 65 -> %c = ๋ฌธ์ํ, %d = decimal
// i=10, j=20, k=30
- ์ถ๋ ฅ๋ฌธ์ ์ฐ๋ ํด๋น %d ์ ๊ฐ์ ๊ธฐํธ๋ ์ถ๋ ฅ ์์ ๋ณํ๊ธฐํธ๋ก ๋ถ๋ฆผ.
- printf() ํจ์๋ก ๋ฌธ์๋ ์ ์ ๊ฐ ๋ฑ์ ์ถ๋ ฅํ๊ณ ์ถ๋ค๋ฉด ๋ฐ๋์ ๋ณํ๊ธฐํธ๋ฅผ ์จ์ผํจ.
(2) printf() ํจ์ - ์ถ๋ ฅ ์์ ๋ณํ๊ธฐํธ : ์ ์ ์ถ๋ ฅ

(3) printf() ํจ์ - ์ถ๋ ฅ ์์ ๋ณํ๊ธฐํธ : ๋ฌธ์ & ๋ฌธ์์ด ์ถ๋ ฅ

(4) printf() ํจ์ - ์ถ๋ ฅ ์์ ๋ณํ๊ธฐํธ : ์ค์ ์ถ๋ ฅ

(5) ์ถ๋ ฅ ์์ ๋ณํ๊ธฐํธ ํ์ฉ ์์ - ์ ์
#include <stdio.h>
int main() {
printf("%d\n", 0x10); // ๋ถํธ ์๋ 10์ง์ ์ ์ ๋ณํ ์ถ๋ ฅ
printf("%x\n", 125); // ๋ถํธ ์๋ ์๋ฌธ์ 16์ง์ ๋ณํ ์ถ๋ ฅ
printf("%X\n", 125); // ๋ถํธ ์๋ ๋๋ฌธ์ 16์ง์ ๋ณํ ์ถ๋ ฅ
printf("%o\n", 125); // ๋ถํธ ์๋ 8์ง์ ๋ณํ ์ถ๋ ฅ
}
// 16
// 7d
// 7D
// 175
(6) ์ถ๋ ฅ ์์ ๋ณํ๊ธฐํธ ํ์ฉ ์์ - ๋ฌธ์, ๋ฌธ์์ด
#include <stdio.h>
int main() {
printf("%c\n", 'A'); // 'A' ๋ฌธ์๋ก ์ถ๋ ฅ
printf("%c\n", 0x42); // 0x42(16์ง์) = 'B' ์ถ๋ ฅ
printf("%s\n", "KNOU"); // "KNOU" ๋ฌธ์์ด ์ถ๋ ฅ
printf("%s\n", "ab\0cd"); // \0 ์ ๋ถํ๋ฉด ๋ค์ ๋ฌธ์์ด์ ์งค๋ฆผ.
}
// A
// B
// KNOU
// ab
(6) ์ถ๋ ฅ ์์ ๋ณํ๊ธฐํธ ํ์ฉ ์์ - ์ค์
#include <stdio.h>
int main() {
printf("%f\n", 12.34f); // %f: double ๊ธฐ๋ณธํ์ผ๋ก ๋ณํ์ด๋จ. ์ฆ, float double ํฌ๊ดํจ.
printf("%f\n", 31.4e-1); // 31.4e-1: 31.4 * 10^-1 = 3.140000
printf("%e\n", 123.45678); // ์ง์ํ์ผ๋ก ์ถ๋ ฅ ๋งจ ์ ๊ฐ๋นผ๊ณ ๋ ๋ชจ๋ ์์์ ํํ
printf("%E\n", 12.345678e-6); // 12.345678 * 10^-6 = 1.2345678 * 10^-5
printf("%g\n", 123.45678);
printf("%g\n", 12.345678e-6);
}
// [ ์ถ๋ ฅ ๊ฒฐ๊ณผ ]
// 12.340000
// 3.140000
// 1.234568e+02
// 1.234568E-05
// 123.457
// 1.23457e-05
- prinf() ์ ์ถ๋ ฅ ์์ ์ง์ ์์์ ์์์ ์ดํ ์๋ฆฌ์๋ฅผ ๊ธฐ๋ณธ์ ์ผ๋ก 6์๋ฆฌ๋ก ์ ํํ๊ณ ์์.
- ๋ง์ฝ 3.1415926 ์ด ์๋ค๋ฉด ๋ง์ง๋ง 6์ด ๋ฐ์ฌ๋ฆผ๋์ด 3.141593 ์ผ๋ก ์ถ๋ ฅ์ด ๋จ.
- %g: ์์์ ํ์ ๋๋ ์ง์ ํ์ ์ค ๊ฐ๊ฒฐํ ํ์์ผ๋ก ์ถ๋ ฅ
(7) ์ถ๋ ฅ ์์์ ํธ์ง

- - ๊ธฐํธ๋ฅผ ์ฌ์ฉํ๋ฉด ์ข์ธก ์ ๋ ฌ์ ํด์ค. ( ๊ธฐ๋ณธ์ ์ผ๋ก๋ ์ฐ์ธก์ ๋ ฌ์ )
- + ๊ธฐํธ๋ ํด๋น ์์ ๋ถํธ๋ฅผ ์ถ๋ ฅํด์ค.
- ' ' ๋ ๋ถํธ ์๋ฆฌ๋ฅผ ํ๋ณดํด์ ์ถ๋ ฅํด์ค. ์ฆ, ์์์ธ ๊ฒฝ์ฐ ๊ณต๋ฐฑ์ด๊ณ ์์์ธ ๊ฒฝ์ฐ - ๋ถํธ๊ฐ ์ถ๋ ฅ๋จ.
- 0์ ์ ์์ ๋น ์๋ฆฌ๋ฅผ 0์ผ๋ก ์ฑ์์ค. ๊ณต๊ฐ์ด ๋จ์ผ๋ฉด ํด์ค.
- ์ถ๋ ฅ์ ์ํ ์ต์ ์๋ฆฟ์๋ฅผ ์ ์๋ก ์ง์ ํด ์ค ์ ์์.
- . ์์์ ์ดํ ์๋ฆฟ์๋ง ์ถ๋ ฅํด์ค.
[ ์ถ๋ ฅ ์์์ ํธ์ง - ์ ์ํ ]

[ ์ถ๋ ฅ ์์์ ํธ์ง - ์ค์ํ ]

- ์ค์ํ์ ์ซ์๋ฅผ ๋ฃ๋ ๊ฒฝ์ฐ ์ฆ, ์์ ๊ฐ์ด 10์ ๋ฃ๊ฒ ๋๋ฉด ์๋ฆฟ์๊ฐ 10์๋ฆฌ๋ก ๋์ด๋จ
- '.' ๊ณผ ๊ฐ์ด ์์์ ์ผ๋ก ์๋ฆฟ์๋ฅผ ํ๊ธฐ๋ฅผ ์ํด์ฃผ๋ฉด ์์์ ๋ค์ ์์ ์๋์ผ๋ก 0์ด ์ฑ์์ง
- 10.1f = 10์๋ฆฌ๋ฅผ ํ๋ณด ํ ๋ค ์ค๋ฅธ์ชฝ์ ์ ๋ ฌ๋ ์ํ๋ก ์์์ ํ์๋ฆฌ๋ฅผ ์ ์ธํ ๋๋จธ์ง๋ฅผ ์๋ผ์ ์ถ๋ ฅ
(8) scanf() ํจ์
[ scanf() ํจ์์ ์ฉ๋ ]

[ ์ ๋ ฅ ์์ ๋ณํ ๊ธฐํธ - ์ ์ ์ ๋ ฅ ]


[ ์ ๋ ฅ ์์ ๋ณํ ๊ธฐํธ - ์ค์ ]

[ ์ ๋ ฅ ์์ ๋ณํ ๊ธฐํธ - ๋ฌธ์ ๋ฐ ๋ฌธ์์ด ์ ๋ ฅ ]


โ 3. ๊ธฐํ ์ ์ถ๋ ฅํจ์
(1) ๋ฌธ์ ๋จ์์ ์ ์ถ๋ ฅ
[ getchar() ํจ์ ]
ch = getchar();
printf("%c", ch); // ์
๋ ฅ๊ฐ์ด ์ถ๋ ฅ๋จ.
- stdin์ผ๋ก๋ถํฐ 1๊ฐ์ ๋ฌธ์๋ฅผ ์ ๋ ฅ๋ฐ์ ์ ์๋ ํจ์์ด๋ค. ์ฆ, ํ์ค์ ๋ ฅ์ผ๋ก ๋ถํฐ ํ๋์ ๋ฌธ์ ์ ๋ ฅ
[ putchar() ํจ์ ]
putchar(๋ฌธ์);
- stdout์ 1๊ฐ์ ๋ฌธ์๋ฅผ ์ถ๋ ฅํด์ฃผ๋ ํจ์์.
[ getchar() ๋ฐ putchar() ํจ์์ ํ์ฉ ์ ]
#include <stdio.h>
int main() {
char c;
printf("๋ฌธ์ ํ๋๋ฅผ ์
๋ ฅํ์ธ์\n");
c = getchar();
printf("์
๋ ฅํ ๋ฌธ์ = ");
putchar(c);
}
- getchar() ํจ์๋ฅผ ํธ์ถํ๋ฉด ๋ฌธ์ ํ๋๋ฅผ ์ ๋ ฅ ํ ์ ์๊ฒ ๋๊ณ , ์ ๋ ฅ ์ c ๋ณ์์ ๊ฐ์ด ๋ด๊ธฐ๊ฒ ๋๋ค.
- ์ดํ putchar() ํจ์๋ฅผ ํธ์ถํ๋ฉด์ c๋ฅผ ๋ฃ๊ฒ ๋๋ฉด ํด๋น ๋ณ์๊ฐ์ ์ถ๋ ฅ์ ํด์ค๋ค.
(2) ๋ฌธ์์ด ๋จ์์ ์ ์ถ๋ ฅ
[ gets() ํจ์ ]
gets(๋ฌธ์์ด๋ณ์);
- stdin ์ผ๋ก๋ถํฐ ํ์ ๋๊น์ง ๋ฌธ์์ด์ ์ ๋ ฅ ํ ์ ์๋ค.
- ๋ฌธ์์ด๋ณ์๋ ์ ๋ ฅํ ๋ฌธ์๋ฅผ ์ถฉ๋ถํ ์ ์ฅํ ์ ์์ด์ผ ํ๋ค. ์ฆ, ๋ฌธ์์ด ํฌ๊ธฐ๋ฅผ ์ ์๊ฐํด์ผํจ.
[ puts() ํจ์ ]
puts(๋ฌธ์์ด);
- stdout ์ ๋ฌธ์์ด์ ์ถ๋ ฅ ํ ์ ์๊ฒ ๋์์ฃผ๋ ํจ์์ด๋ค.
- ์ถ๋ ฅ ํ ์๋์ผ๋ก ํ์ด ๋ฐ๋๋ ํน์ง์ด ์๋ค.
[ gets() ๋ฐ puts() ํจ์์ ํ์ฉ ์ ]
#include <stdio.h>
int main() {
char str[100];
printf("๋ฌธ์์ด์ ์
๋ ฅํ์ธ์\n");
gets(str);
printf("์
๋ ฅํ ๋ฌธ์์ด = ");
puts(str);
puts("KNOU");
}
// ๊ฒฐ๊ณผ๊ฐ
// ์
๋ ฅ: 123456
// ์ถ๋ ฅ: 123456 , KNOU'๐ ๏ธBackend > โ๏ธC' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [C์ธ์ด] ํจ์์ ๊ธฐ์ต ํด๋์ค(1) (0) | 2025.10.15 |
|---|---|
| [C์ธ์ด] ์ ํ ์ ์ด๋ฌธ๊ณผ ๋ฐ๋ณต ์ ์ด๋ฌธ (0) | 2025.10.13 |
| [C์ธ์ด] ์ ์ถ๋ ฅ ํจ์์ ์ฐ์ฐ์(2) (0) | 2025.10.03 |
| [C์ธ์ด] ์๋ฃํ๊ณผ ์ ํ์ฒ๋ฆฌ๊ธฐ (1) | 2025.08.29 |
| [C์ธ์ด] C ์ธ์ด์ ๊ฐ์ (1) | 2025.08.18 |