#include <stdio.h> int main(void) { int num; printf( Please enter an integer "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 을 작성하면서 C 프로그램의 구성 요소에 대하여 알아본다. 주석이란 무엇인지 알아보고, 주석을 만드는 방법에 대하여 알아본다. 함수란 무엇인지 알아보고, C 프로그램에 반드시 필요한 main 함수에 대하여 알아본다. C 프로그램에서 출력에 사용되는 printf 함수에 대하여 알아본다. 변수의 개념과 변수의 값을 입력 받는데 사용되는 scanf 함수에 대하여 알아본다. 2
목차 프로그램 코드 주석 main 함수 출력 프로그램 코드 변수 scanf 함수를 이용한 입력 printf 함수를 이용한 출력 3 프로그램 코드 Hello World 문자열을 출력하는 프로그램 4
프로그램 코드 1 2 3 4 5 6 7 8 9 /* Ex02_01.c */ #include <stdio.h> 주석 입출력 라이브러리 사용을 위한 준비 int main(void) { printf("hello World\n"); 프로그램의 시작점 함수 } 출력 return 0; 5 주석 주석 프로그램에 대한 주석의 시작에는 프로그램 수행에 프로그램 전체에 설명 /*가, 주석의 끝에는 */가 필요하다. 영향을 미치지 않는 요소 대한 간략한 정보를 제공하기 위한 목적으로도 사용한다. 6
주석 한 줄로 된 문장의 일부분을 주석으로 만들 수도 있고, 여러 줄에 걸쳐서 주 석을 작성할 수도 있다. //을 이용한 한 줄 주석 C++ 주석이지만, 대부분의 C/C++ 컴파일러에서 지원됨 //부터 해당 줄의 끝까지를 주석으로 간주 7 주석 프로그램 코드 중 특정 문장이 수행되지 않도록 하려면 주석 처리한다. /* */로된 주석 안에 다시 /* */로 된 주석을 중첩해서 사용할 수 없지만, //로 된 주석은 중첩해서 사용할 수 이다. 8
main 함수 함수(Function) 프로그램에서 처리할 내용을 모아두는 기본 단위 C 프로그램은 하나 이상의 함수로 구성된다. 함수를 만들 때는 함수의 리턴형, 함수 이름, 매개 변수가 필요하다. 함수가 처리할 내용은 { } 안에 써준다. 함수는 문장들로 구성된다. 문장(Statement) 함수를 구성하는 기본 단위 C 프로그램의 각 문장은 세미콜론(;)으로 끝난다. 9 main 함수 함수의 호출 및 리턴 과정 함수가 호출되면 함수 안에 있는 문장들이 순차적으로 수행된다. 함수의 끝(})을 만나거나 return 문을 만나면, 함수를 호출한 곳으로 되돌아간다. 리턴문에서 return 다음에 리턴할 값을 써준다. 10
main 함수 진입점 함수(entry-point function) 프로그램이 처음 시작될 때 호출되는 함수 main 함수가 진입점 함수이므로, C 프로그 램에는 반드시 main이 필요하다. main 함수가 없거나, 여러 개의 main 함수 를 가진 프로그램은 잘못된 프로그램이다. 11 main 함수 main 함수의 원형 main 함수는 void형을 리턴하거나 int형을 리턴한다. void main(void) int main(void) main 함수의 리턴 값 프로그램의 종료 코드(exit code) 프로그램이 종료될 때 운영체제에게 넘겨주는 값 12
main 함수 들여쓰기(Indentation) C 프로그램의 각 문장은 세미콜론(;)으로 끝난다. 같은 블록에 속한 문장들을 들여쓰기를 하는 것이 좋다. 13 출력 출력을 위한 준비 입출력 라이브러리를 사용하려면 먼저 입출력 라이브러리에 대한 헤더 파일을 포 함해야 한다. 헤더 파일 없이 printf 함수를 호출하면, 컴파일 경고(warning)가 발생한다. 14
출력 기본적인 printf 함수의 사용 문자열을 출력하려면 printf 함수를 이용한다. 출력할 내용을 로 묶어서 printf 함수의 ( ) 안에 써준다. 문자열을 출력한 다음에 커서를 다음 줄로 이동하려면 줄 바꿈 문자( \n )를 함께 출력해야 한다. 15 출력 콘솔 프로그램 윈도우 프로그램 콘솔 창에서 실행되는 프로그램 텍스트 기반의 입출력만 처리 한 번에 하나의 프로그램만 실행 일반적인 윈도를 띄우고, 윈도에서 입출력을 처리하는 프로그램 그래픽 출력이 가능 Win32 API 라이브러리나 MFC 라이 브러리가 추가로 필요 16
출력 라이브러리 자주 사용되는 기능을 미리 준비해둔 것 컴파일된 오브젝트 코드를 묶어놓은.lib 확장자를 가진 바이너리 파일 17 프로그램 코드 코드 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 /* Ex02_02.c */ #include <stdio.h> int main(void) { float num; int i_part; float f_part; printf("실수를 입력하세요 "); scanf("%f", &num); 실수형 변수 선언 정수형 변수 선언 실수형 변수 선언 실수형 변수 입력 i_part = num; f_part = num - i_part; printf("%f의 정수부는 %d이고, 실수부는 %f입니다.\n", num, i_part, f_part); } return 0; 실수형 변수 와 정수형 변수 출력 18
변수 변수(variable) 어떤 값을 저장하는 공간 값을 저장하려면 먼저 메모리에 공간을 확보하기 위해서 변수의 데이터 형이 필 요하고, 메모리에 접근하려면 변수의 이름이 필요하다. 메모리(memory) 연속된 바이트의 모임 메모리에 접근할 때는 1 바이트 단위로 접근 저장할 값의 형식에 따라서 사용되는 공간의 크기가 결정된다. 19 변수 변수의 선언 변수는 먼저 선언을 한 후에 사용해야 한다. 변수를 선언할 때는 변수의 데이터형과 변수의 이름이 필요하다. 문자형 변수는 char형, 정수형 변수는 int형, 실수형 변수는 float형으로 선언한다. 변수의 이름은 영문자와 숫자, 밑줄 기호(_)를 사용해서 만들어야 하고, 변수의 이름 중 간에는 빈칸을 사용할 수 없다. 20
변수 변수의 사용 변수 명을 이용하면 변수의 값을 읽어올 수 있다. 변수에 값을 대입하려면 치환연산자 =를 이용한다. 21 scanf 함수를 이용한 입력 사용자가 키보드로 입력한 값을 읽어올 때는 입출력 라이브러리 함수인 scanf 함수를 사용한다. scanf 함수의 형식 문자열 22
scanf 함수를 이용한 입력 scanf 함수의 기본적인 사용 형식 23 scanf 함수를 이용한 입력 scanf 함수의 사용 예 24
printf 함수를 이용한 변수의 출력 printf 함수의 형식 문자열 25 printf 함수를 이용한 변수의 출력 printf 함수의 기본적인 사용 형식 26
printf 함수를 이용한 변수의 출력 printf 함수의 사용 예 27 학습정리 주석 프로그램에 대한 설명으로 실제로 수행되지 않는 부분 주석은 /*로 시작해서 */로 끝난다. //를 이용해서 한 줄 주석을 만들 수 있다. main 함수 C 프로그램의 진입점 함수 프로그램을 시작할 때 운영체제가 호출해주는 함수 함수가 처리할 내용은 { } 안에 써준다. 문장 함수를 구성하는 기본 단위 문장의 끝에는 세미콜론(;)을 써준다. 들여쓰기 한 줄에 한 문장을 작성하고, 각 문장은 블록 단위로 들여 쓰는 것이 좋다. 출력 printf 함수를 이용한다. <stdio.h>라는 헤더 파일을 포함한다. ( )안에 출력할 문자열을 지정한다. 28
학습정리 변수 프로그램에서 사용되는 값을 저장 변수를 선언하려면 변수의 데이터 형과 이름이 필요하다. 변수의 데이터 형 char, int, float 등이 있다. 변수의 사용 메모리에 저장된 변수의 값을 읽어오거나 값을 저장하려면 변수의 이름을 사용한다. 변수의 값을 변경하려면 =를 이용한다. scanf 함수 변수의 값을 입력 받을 때는 scanf 함수를 이용한다. 형식 문자열을 이용해서 입력 받을 값의 형식을 알려준다. %d는 정수 입력, %f는 실수 입력 입력된 값을 저장할 변수 이름 앞에 &를 써준다. printf 함수 printf 함수를 이용해서 변수의 값을 출력할 때도 형식 문자열 을 이용한다. %d는 정수 출력, %f는 실수 출력 29 수고하셨습니다. 질문 있습니까? NEXT Chapter 3장. 변수와 데이터형 30