2010년 3월 8일 (1주차) 유 승 석(aviteria@gmail.com)
수업 내용 수업 목표 강의 내용 강의 계획서 교과서 및 참고도서 평가 방법 수강생의 학습 방법 제안 강의자료 사이트 Questions & Answers
수업 목표 C 프로그램의 기본 구조를 설명할 수 있다. 구성된 개발환경에서 HelloWorld!! 를 화면에 출력하는 프로그램을 작성할 수 있다. 간단한 변수를 이용하는 프로그램을 작성할 수 있다. 함수를 이용하는 프로그램을 작성할 수 있다.
C 언어란? 데니스 리치(Dennis Ritchie)와 켄 톰슨(Ken Thompson)이 벨연구소에서 유닉스를 개발하던 중 1972년 데니스 리치에 의해 개발 대부분의 시스템 소프트웨어를 구현하는 고급 언어로, 저급 언어처럼 비트 처리나 포인터에 의한 주소 처리를 함 이식성이 뛰어난 언어 구조화되어 있음 교과서 현대 암호학, 원동호, 도서출판 그린 http://greenpress.co.kr/list/list_view.asp?sku=91 참고도서 암호학과 네트워크 보안, 손승원 외 3, McGraw Hill Korea http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200802260009
기본 프로그램 가장 간단한 프로그램 실행결과 01 main() 02 { 03 } 함수의 시작을 의미 함수의 끝을 의미
함수의 구성 C 프로그램은 다음과 같은 형태의 함수로 구성 중괄호 {, } 사이에 이 함수에서 실행될 문장들을 기술
main 함수 C 프로그램에서 main 함수는 필수적으로 1개 존재해야 한다.
실행 문장이 있는 프로그램 문장의 끝에는 세미콜론(;) 필수! 오류발생 들여쓰기(indentation)를 일반화 할 것! 01 #include <stdio.h> /*printf 함수를 정의하는 헤더 파일*/ 02 03 main() 04 { 05 /* printf 함수는 문자열(“...”)을 화면에 출력 */ 06 printf("Hello World\n"); 07 printf("Hi C Programming\n"); 08 } 문장의 끝에는 세미콜론(;) 필수! 오류발생 들여쓰기(indentation)를 일반화 할 것! 주석 안에 또 다른 주석은 주의할 것!
실습과제 1 3 개의 printf 함수를 이용해서 다음과 같이 출력되는 프로그램을 작성하고, 또한 1개의 printf 함수를 이용해서도 작성하여라. 출력결과 C Language Java Php
변수를 이용하는 프로그램 모든 프로그램은 데이터를 사용하는데 데이터는 상수와 변수로 구분할 수 있다. 상수는 변하지 않는 정해진 값(21)이고, 변수는 값을 저장하는 공간(age)으로 언제나 새로운 값을 넣을 수 있다. 01 #include <stdio.h> 02 03 main() 04 { 05 int age; 06 age = 21; 07 printf("age : %d\n", age); 08 }
실습과제 2 10과 20을 저장한 두 개의 변수를 더한 결과를 출력하는 프로그램을 작성하여라.
함수를 이용하는 프로그램 규모가 큰 프로그램은 하나의 main 함수만을 사용하는 것 보다는 여러 함수를 이용해서 작성하는 것이 좋다. 프로그램에 대한 이해가 쉽고, 프로그램이 간단해진다. 01 #include <stdio.h> 02 03 func( ) 04 { 05 printf(“run function\n”); 06 } 07 08 main( ) 09 { 10 printf(“before function call\n”); 11 func( ); 12 printf(“after function call\n”); 13 } 함수 정의 함수 호출
함수를 이용하는 프로그램 실행절차 함수의 정의와 호출
함수를 이용하는 프로그램 함수의 정의가 함수 호출 뒤에 나오는 경우 컴파일러에 따라 오류가 발생할 수도 있다. 그 이유는 컴파일러 입장에서는 함수가 뒤에 정의된 사실을 모를 수 있기 때문이다. 이런 경우에는 함수를 앞에 선언하여 컴파일러에게 어떤 함수가 정의되어 있는지 알려주면 된다.
함수를 이용하는 프로그램 함수 선언 함수 호출 함수 정의 01 #include <stdio.h> 02 03 func( ); 04 05 main( ) 06 { 07 printf(“before function call\n”); 08 func( ); 09 printf(“after function call\n”); 10 } 11 12 func( ) 13 { 14 printf(“run function\n”); 15 } 함수 선언 함수 호출 함수 정의
두 개의 함수를 이용하는 프로그램 01 #include <stdio.h> 03 func1( ); 06 main() 07 { 08 printf("before function 1\n"); 09 func1( ); 10 printf("after function 1, before function 2\n"); 11 func2( ); 12 printf("after function 2\n"); 13 } 15 func1( ) 16 { 17 printf("function 1\n"); 18 } 20 func2( ) 21 { 22 printf("function 2\n"); 23 }
매개 변수가 있는 함수 01 #include <stdio.h> 02 03 func(int num1, int num2); 04 main() 05 { 06 func(10, 20); 07 } 08 09 func(int num1, int num2) 10 { 11 printf(“%d\n”, num1+num2); 12 }
실습과제 3 3개의 값 10, 20, 30을 전달받아 합을 출력하는 프로그램으로 수정하여라.
값을 반환하는 함수 01 #include <stdio.h> 02 03 int add(int num1, int num2); 04 int sub(int num1, int num2); 05 06 main() 07 { 08 printf("%d %d\n", add(10, 20), sub(10, 20)); 09 } 10 11 int add(int num1, int num2) 12 { 13 return num1+num2; 14 } 15 16 int sub(int num1, int num2) 17 { 18 return num1-num2; 19 }
실습과제 4 더하기, 곱하기, 빼기, 나누기 연산을 하는 4개의 함수를 만들고 이를 이용하는 프로그램을 작성하여라. 단, 나누기 연산자는 / 이다.
정리 함수의 형태 반환하는 값이 없고, 매개 변수도 없는 경우
Questions & Answers