29
C언어 기초 2012년 이 은 주 “초보 프로그래머를 위한” 2장 : C프로그램 시작하기

OCW_C언어 기초

Embed Size (px)

Citation preview

Page 1: OCW_C언어 기초

C언어 기초

2012년

이 은 주

“초보 프로그래머를 위한”

2장 : C프로그램 시작하기

Page 2: OCW_C언어 기초

학습목표

2

■ 첫 번째 C 프로그램을 작성하면서 C 프로그램의 구성 요소

■ 주석(comment)이란 무엇인지 알아보고, 주석을 만드는 방법

■ 함수란 무엇인지 알아보고, C 프로그램에 반드시 필요한 main 함수

■ C 프로그램에서 출력에 사용되는 printf 함수

■ 변수의 개념과 변수의 값을 입력 받는데 사용되는 scanf 함수

Page 3: OCW_C언어 기초

목 차

3

첫 번째 C 프로그램

• 프로그램 코드

• 주석

• main 함수

• 출력

두 번째 C 프로그램

• 프로그램 코드

• 변수

• scanf 함수를 이용한 입력

• printf 함수를 이용한 출력

Page 4: OCW_C언어 기초

첫번째 C프로그램

• “Hellow World”라는 문자열을 출력하는 프로그램

Page 5: OCW_C언어 기초

• 첫 번째 C 프로그램

첫 번째 C 프로그램

5

1 : /* Ex02_01.c */ 2 : #include <stdio.h> 3 : 4 : int main(void) 5 : { 6 : printf("Hello World\n"); 7 : 8 : return 0; 9 : }

주석

입출력 라이브러리

사용을 위한 준비

프로그램의 시작점 함수

출력

Page 6: OCW_C언어 기초

• 주석

– 프로그램 수행에는 영향을 미치지 않는 요소

– 프로그램 코드에 대한 설명을 달아두는 목적이나 프로그램 전체에 대한 간략한 정보를 제공하기 위한 목적으로 사용

첫 번째 C 프로그램

6

Page 7: OCW_C언어 기초

• 한 줄로 된 문장의 일부분을 주석으로 만들 수도 있고, 여러 줄에 걸쳐서 주석을 작성할 수도 있음

• //을 이용한 한 줄 주석

– 대부분의 C/C++ 컴파일러에서 지원됨

– //부터 해당 줄의 끝까지를 주석으로 간주

첫 번째 C 프로그램

7

Page 8: OCW_C언어 기초

• 주석은 프로그램의 일부를 컴파일 하지 않도록 만듦

• /* */로 된 주석은 중첩해서 사용할 수 없음

첫 번째 C 프로그램

8

Page 9: OCW_C언어 기초

• /**/ 주석 안에 한 줄 주석인 //를 사용하는 것은 가능

첫 번째 C 프로그램

9

Page 10: OCW_C언어 기초

• 함수란?

– 프로그램에서 처리할 내용을 모아두는 기본 단위

– C 프로그램은 하나 이상의 함수로 구성됨

– 함수를 만들 때는 함수의 리턴형, 함수 이름, 매개 변수가 필요함

– 함수의 끝(})을 만나거나 return 문을 만나면 함수를 호출한 곳으로 되돌아감

• 문장

– 함수를 구성하는 기본 단위

– C 프로그램의 각 문장은 세미콜론(;)으로 끝남

첫 번째 C 프로그램

10

Page 11: OCW_C언어 기초

• 함수 호출의 리턴 과정

첫 번째 C 프로그램

11

Page 12: OCW_C언어 기초

• 진입점 함수(entry-point function)

– 프로그램이 처음 시작될 때 운영체제가 호출하는 특별한 함수

– main 함수가 C 프로그램의 진입점 함수

• 기본적인 C 프로그램은 main 함수가 반드시 필요

첫 번째 C 프로그램

12

Page 13: OCW_C언어 기초

• main 함수의 원형

– main 함수는 void형을 리턴하거나 int형을 리턴

• main 함수의 리턴 값

– 프로그램이 종료될 때 운영체제에게 넘겨주는 값

– 프로그램의 종료 코드(exit code)

– 0이면 정상 종료, 0이 아니면 비정상 종료로 간주

첫 번째 C 프로그램

13

Page 14: OCW_C언어 기초

• 들여쓰기(Indentation)

– 문장의 끝은 세미콜론(;)에 의해서 결정됨

– 줄이 바뀐다고 새로운 문장이 되는 것은 아님

– 같은 블록에 속한 문장들에 대해서는 들여쓰기를 하는 것이 좋음

첫 번째 C 프로그램

14

Page 15: OCW_C언어 기초

• 가장 간단한 형태의 출력은 콘솔 창으로의 출력

첫 번째 C 프로그램

15

◈ 윈도우 프로그램

◈ 콘솔프로그램

Page 16: OCW_C언어 기초

• 입출력 라이브러리

– 입력과 출력에 관련된 기능을 제공

• 입출력 라이브러리를 사용하기 위해서는 먼저 헤더 파일을 포함해야 함

– 헤더 파일을 포함하지 않고 함수를 호출하면, C 컴파일러가 컴파일 경고(warning)을 발생시킴

첫 번째 C 프로그램

16

Page 17: OCW_C언어 기초

• 컴파일 경고

첫 번째 C 프로그램

17

Page 18: OCW_C언어 기초

• C 프로그램에서 자주 사용되는 기능을 미리 준비해둔 것

• .lib 확장자를 가진 바이너리 파일

• 링크해서 사용할 수 있도록 컴파일된 오브젝트 코드를 묶어놓은 것

첫 번째 C 프로그램

18

Page 19: OCW_C언어 기초

• C 프로그램에서 출력을 하려면 printf 함수 이용

• printf 함수를 호출하려면 ( )안에 출력할 내용을 ""로 묶어서 씀.

• 문자열 출력시 문자열의 끝에서 줄을 바꾸려면 줄바꿈 문자(‘\n')를 사용

첫 번째 C 프로그램

19

Page 20: OCW_C언어 기초

• 프로그램 코드를 작성

두 번째 C 프로그램

20

1: /* Ex02_02.c */ 2: #include <stdio.h> 3: 4: int main(void) 5: { 6: float num; 7: int i_part; 8: float f_part; 9: 10: printf("실수를 입력하세요 : "); 11: scanf("%f", &num); 12: 13: i_part = num; 14: f_part = num - i_part; 15: 16: printf("%f의 정수부는 %d이고, 실수부는 %f입니다.\n", num, i_part, f_part); 17: 18: return 0; 19: }

실수형 변수 선언 정수형 변수 선언 실수형 변수 선언

실수형 변수 입력

실수형 변수 와

정수형 변수 출력

Page 21: OCW_C언어 기초

• 변수란?

– 값을 넣어두는 공간

– 변수를 사용하려면 먼저 저장할 값의 종류에 따라서 메모리에 공간을 잡아두어야 함 변수의 선언

• 메모리

– 바이트의 모임

– 메모리에 접근할 때는 1 바이트 단위로 접근

– 저장할 값의 형식(데이터형)에 따라서 필요한 공간의 크기가 다름

• 문자를 저장하려면 1바이트, 정수는 4바이트, 실수도 4바이트 필요

두 번째 C 프로그램

21

Page 22: OCW_C언어 기초

• 변수는 사용하기 전에 먼저 선언을 하고 사용

• 변수를 선언할 때는 변수의 데이터 형과 변수의 이름이 필요

– 문자형 변수는 char형, 정수형 변수는 int형, 실수형 변수는 float형으로 선언

– 변수의 이름은 영문자와 숫자, 밑줄 기호(_)를 사용해서 만들어야 하고, 변수의 이름 중간에는 빈칸을 사용할 수 없음

두 번째 C 프로그램

22

Page 23: OCW_C언어 기초

• 변수 선언 후 변수의 이름을 이용해서 변수에 값을 저장하거나 변수의 값을 읽어올 수 있음

– 변수에 값을 저장하려면 변수 이름 다음에 = 을 쓰고, 그 다음에 값을 적어주면 됨 변수에 값을 대입

두 번째 C 프로그램

23

Page 24: OCW_C언어 기초

• 콘솔 창에서 키보드로 사용자가 입력한 값을 읽어올 때도 입출력 라이브러리를 사용하는데, 이 때 바로 scanf 함수 사용

• scanf 함수의 형식 문자열

두 번째 C 프로그램

24

Page 25: OCW_C언어 기초

• 기본적인 사용 형식

두 번째 C 프로그램

25

Page 26: OCW_C언어 기초

• printf 함수의 형식 문자열

두 번째 C 프로그램

26

Page 27: OCW_C언어 기초

두 번째 C 프로그램

27

Page 28: OCW_C언어 기초

• 첫 번째 C 프로그램

– 주석 : 프로그램에 대한 설명으로 실제로 수행되지 않는 부분

– 주석은 /*로 시작해서 */로 끝난다. //를 이용해서 한 줄 주석

– main 함수 : C 프로그램의 진입점 함수

• 프로그램을 시작할 때 운영체제가 호출해주는 함수

– 문장 : 함수를 구성하는 기본 단위.

• 문장의 끝에는 세미콜론(;)을 써야함

• 문장을 들여쓰기 하는 것이 좋음

– 출력 : printf 함수를 이용함

• <stdio.h>라는 헤더 파일을 포함

• ( )안에 출력할 문자열을 지정

학습정리

28

Page 29: OCW_C언어 기초

• 두 번째 C 프로그램

– 변수 : 프로그램에서 사용되는 값을 저장

• 변수를 만들 때는 변수의 데이터 형과 이름 필요

– 변수의 데이터 형 : char, int, float 등

– 변수의 사용 : 변수는 메모리에 할당됨

• 메모리에 저장된 변수의 값을 읽어오거나 값을 저장하려면 변수의 이름을 사용함

• 변수의 값을 변경하려면 num = 10;처럼 =를 이용함

– scanf 함수 : 변수의 값을 입력 받을 때는 scanf 함수를 이용함

• 형식 문자열을 이용해서 입력 받을 값의 형식을 알려준다. %d는 정수 입력, %f는 실수 입력에 사용됨

• 입력된 값을 저장할 변수 이름 앞에 &를 써야함

– printf 함수

• printf 함수를 이용해서 변수의 값을 출력할 때도 형식 문자열을 이용하며, %d는 정수 출력, %f는 실수 출력에 사용됨

학습정리

29