제1부 제1장 시작하기 처음으로 배우는 C 프로그래밍 제1부 기초 제1장 시작하기
프로그래밍 소개 Process Data Input Data Output Data 컴퓨터 컴퓨터 프로그램 제1부 제1장 시작하기 프로그래밍 소개 컴퓨터 자동차, 냉장고와 같은 기계장치 컴퓨터 프로그램 컴퓨터가 특정한 결과를 만들어 내도록 하기 위해 나열된 일련의 명령어들의 집합 컴퓨터 프로그램의 수행과정 Process Data Input Data Output Data 처음으로 배우는 C 프로그래밍 제1부
프로그래밍 소개 프로그래밍 프로그래밍 언어 프로그래밍 언어의 종류 제1부 제1장 시작하기 프로그래밍 소개 프로그래밍 컴퓨터가 응답할 수 있고 다른 프로그래머들이 이해할 수 있는 언어를 사용하여 명령어들을 작성하는 과정 프로그래밍 언어 프로그램을 작성하는데 사용되는 명령어의 집합 프로그래밍 언어의 종류 FORTRAN(FORmula TRANslation) COBOL(COmmon Business Oriented Language) BASIC(Beginners All-purpose Symbolic Instruction Code) Pascal, C 언어 C++, JAVA 처음으로 배우는 C 프로그래밍 제1부
프로그래밍 소개 알고리즘 알고리즘을 표현하는 방법 프로그래머는 프로그램을 작성하기 전에 원하는 결과 뿐 아니라 어떻게 그러한 결과를 만들어 낼 것인가를 명확히 이해하고 있어야 함. 어떻게 계산을 수행할 것인가를 단계적으로 기술하는 명령어들의 모임 실제 프로그램을 작성하기 전에 작성 그림 1.4 참조 알고리즘을 표현하는 방법 의사코드(pseudo code) 순서도(Flowchart) 처음으로 배우는 C 프로그래밍 제1부
의사코드 컴퓨터로 세 숫자를 입력 받는다. 숫자를 더하고 그 합을 3으로 나누어서 평균을 계산한다. 평균을 표시한다. 처음으로 배우는 C 프로그래밍 제1부
Flowchart for Calculating the Average of Three Numbers Start Input three values Calculate the average Display the average End 처음으로 배우는 C 프로그래밍 제1부
Flowchart Symbols Indicates the beginning or end of an algorithm Indicates an input or output operation Indicates computation or data manipulation Used to connect the flowchart symbols and indicate the logic flow Indicates a decision point in an algorithm Indicates the initial, final, and increment values of a loop Indicates a predefined process, as in calling a sorting process Indicates an entry to or exit from another part of the flowchart SYMBOL NAME DESCRIPTION Terminal Input/Output Process Flow Lines Decision Loop Predefined Process Connector 처음으로 배우는 C 프로그래밍 제1부
프로그래밍 소개 코딩 프로그램 번역 알고리즘을 컴퓨터 프로그램으로 변환하는 과정 원시 프로그램(C 프로그램 등등)을 0과 1로 구성되는 컴퓨터 기계어로 바꾸는 것 인터프리터형 언어 원시 프로그램에서 각 문장이 개별적으로 번역되어 즉시 실행되는 것 인터프리터 : 번역을 수행하는 프로그램 BASIC 컴파일러형 언어 원시 프로그램의 모든 문장이 번역된 후에 실행되는 프로그래밍 언어 컴파일러 : 번역을 수행하는 프로그램 C, Pascal, C++ 처음으로 배우는 C 프로그래밍 제1부
모듈 소개 모듈 특정 작업을 수행하기 위해 설계되고 개발되어지며, 실제 그 자체가 하나의 작은 부 프로그램 Data In Operations on the Data Data In Result Out A Module Must Accept Data, Process the Data, and Produce a Result 처음으로 배우는 C 프로그래밍 제1부
모듈 소개 모듈러 프로그램 프로그램을 관련된 부분(모듈)들로 구성 어느 하나의 모듈이 작성되기 전에 전체 프로그램을 먼저 설계가 가능 Module 4 Module 5 Module 6 Module 2 Module 3 Module 1 A Well-Designed Program is Built Using Modules 처음으로 배우는 C 프로그래밍 제1부
함수 소개 함수 함수의 예 입력 받은 데이터를 완성된 결과로 만들어 내는 작은 기계 외부로부터 함수로의 인터페이스는 입력과 출력 함수 안의 내용은 캡슐화되어 숨겨짐 함수의 예 First Number Result Second A * B A Multiplying function 처음으로 배우는 C 프로그래밍 제1부
함수 소개 함수에 사용 가능한 이름(식별자) 함수 식별자의 예 문자, 숫자, 밑줄문자의 조합으로 구성 첫 문자는 문자이거나 밑줄문자 공백 문자 사용 불가 키워드 사용 불가(표 1-2 참조) 31문자 이상 사용 불가 기억하기 용이해야 함 소문자로 이루어짐 끝에 반드시 괄호()가 있어야 함 함수 식별자의 예 grosspay, tax_calc, add_nums, deg_to_rad, mult_two 틀린 예 : 1AB3, E*6, while 처음으로 배우는 C 프로그래밍 제1부
main() 함수(구동함수) 모든 C 프로그램은 반드시 main()이라 불리는 함수를 하나씩 가져야만 함 컴파일러에게 어디서 프로그램 실행이 시작될 것인지 알려 줌 다른 함수들이 어떠한 순서로 수행될 것인지를 알려 줌 taxes( ) net_pay( ) output() gross_pay() We Need Some Order Here! 처음으로 배우는 C 프로그래밍 제1부
main() 함수(구동함수) gross_pay( ) taxes( ) net_pay( ) output( ) main() You go first I’m done You go second You go third You go last The Function name Main() { gross_pay( ); taxes( ); net_pay( ); output( ); } body The main() Function Controls All Other Functions A Sample main( ) Function 처음으로 배우는 C 프로그래밍 제1부
printf() 함수 주어진 데이터를 시스템 표준 표시 장치로 보내는 출력함수 Entrance to a Function { Body of Function } Entrance to a Function printf ( ) passing a Message to printf( ) 처음으로 배우는 C 프로그래밍 제1부
printf() 함수 프로그램 1-1 프로그램 1-2 #include <stdio.h> /* printf 함수를 사용할 수 있도록 하는 전처리 문 */ void main(void) / * 함수의 헤더 열, 반환값의 형, 함수명, 입/출력인수 */ { /* 함수의 시작 */ printf(“hello there world!”); /* hello there world!를 인수로 printf() call */ } /* 함수의 끝 */ 프로그램 1-2 #include <stdio.h> void main(void) { printf(“Computers, compurters everywhere”); printf(“\n as far as I can C”); } 처음으로 배우는 C 프로그래밍 제1부
프로그래밍 형태 프로그램의 형태 한 프로그램은 단 하나의 시작점을 갖기 때문에 모든 C 언어 프로그램은 하나의 main()함수를 포함해야 함 main()함수를 구성하는 모든 문장은 { }사이에 포함 모든 문장은 세미콜론(;)으로 끝나야 함 하나 이상의 문장이 한 줄에 놓일 수 있음 한 문장이 여러 줄에 걸쳐 작성될 수 있음 이중 따옴표, 함수 이름, 예약어에 포함된 공백을 제외하고 모든 공백은 무시됨 들여쓰기를 적절히 사용해야 함 주석 프로그램 내에 존재하는 설명문 /* 이것은 주석문 입니다. */ 처음으로 배우는 C 프로그래밍 제1부
기본 프로그래밍 형태 프로그램 1-3 #include <stdio.h> void main(void) /* this program prints a message */ { printf(“Hello there world!”); /* a call to printf() */ } 처음으로 배우는 C 프로그래밍 제1부
하향식(Top-Down) 프로그램 개발 1, 2 단계 : 프로그램 분석단계 3단계 : 설계 단계 4단계 : 코딩 단계 5단계 : 테스트 단계 5단계 하향식 프로그램 방법 1단계 : 원하는 출력 결정 2단계 : 입력 항목 결정 3단계 a : 알고리즘 결정 b : 수작업 계산 4단계 : 프로그램 작성 5단계 : 출력 테스트 처음으로 배우는 C 프로그래밍 제1부
모듈과 하향식 설계 Inventory control program Data entry section Calculation Report Data entry section Enter data Modify Delete Screen reports Printed Calculation Report Inventory control program First-Level structure diagram Second-Level Refinement Structure Diagram 처음으로 배우는 C 프로그래밍 제1부
일반적인 프로그래밍 오류 main 뒤에 괄호를 생략하는 경우 함수 본체의 시작을 나타내는 중괄호를 생략하거나 잘못 입력하는 경우 함수의 끝을 나타내는 중괄호를 생략하거나 잘못 입력하는 경우 함수의 이름을 잘못 쓰는 경우 printf() -> print() printf()에서 이중 따옴표 없이 메시지를 사용하는 경우 각 문장의 끝에 세미콜론을 빠뜨리는 경우 새로운 줄을 나타내는 \n을 빠트리는 경우 처음으로 배우는 C 프로그래밍 제1부
요약 기본적인 용어(프로그램, 프로그래밍 언어 등등) C 프로그램의 기본 형태 표준출력함수 printf() 5단계 하향식 프로그램 작성 방법 처음으로 배우는 C 프로그래밍 제1부