PowerPoint Presentation

Similar documents
OCW_C언어 기초

Microsoft PowerPoint - chap03-변수와데이터형.pptx

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

Microsoft PowerPoint - chap04-연산자.pptx

OCW_C언어 기초

Microsoft PowerPoint - Chapter_04.pptx

< E20C6DFBFFEBEEE20C0DBBCBAC0BB20C0A7C7D12043BEF0BEEE20492E707074>

Microsoft PowerPoint - C프로그래밍-chap03.ppt [호환 모드]

Microsoft PowerPoint - 3ÀÏ°_º¯¼ö¿Í »ó¼ö.ppt

C 언어의구성요소인상수, 변수, 입 출력함수에 대하여학습

쉽게 풀어쓴 C 프로그래밍

Microsoft PowerPoint - 2장 변수와 자료형 pptx

쉽게 풀어쓴 C 프로그래밍

PowerPoint Presentation

쉽게 풀어쓴 C 프로그래밍

Microsoft PowerPoint - 03_(C_Programming)_(Korean)_Pointers

Microsoft PowerPoint - chap11-포인터의활용.pptx

Microsoft PowerPoint - [2009] 02.pptx

Microsoft PowerPoint - chap05-제어문.pptx

Microsoft PowerPoint - chap06-2pointer.ppt

Microsoft PowerPoint - chap-04.pptx

untitled

Microsoft PowerPoint - chap-04.pptx

Microsoft PowerPoint - ch07 - 포인터 pm0415

1.2 자료형 (data type) 프로그램에서다루는값의형태로변수나함수를정의할때주로사용하며, 컴퓨터는선언된 자료형만큼의메모리를확보하여프로그래머에게제공한다 정수 (integer) 1) int(4 bytes) 연산범위 : (-2 31 ) ~ (2 31 /2)-

ABC 3장

Microsoft PowerPoint - chap10-함수의활용.pptx

슬라이드 1

Microsoft PowerPoint - chap13-입출력라이브러리.pptx

<322EBCF8C8AF28BFACBDC0B9AEC1A6292E687770>

쉽게 풀어쓴 C 프로그래밍

비트와바이트 비트와바이트 비트 (Bit) : 2진수값하나 (0 또는 1) 를저장할수있는최소메모리공간 1비트 2비트 3비트... n비트 2^1 = 2개 2^2 = 4개 2^3 = 8개... 2^n 개 1 바이트는 8 비트 2 2

PowerPoint 프레젠테이션

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi

<4D F736F F F696E74202D20C1A634C0E520BAAFBCF6BFCDC0DAB7E1C7FC>

Microsoft PowerPoint - chap12-고급기능.pptx

untitled

금오공대 컴퓨터공학전공 강의자료

PowerPoint Presentation

Microsoft PowerPoint - chap01-C언어개요.pptx

목차 포인터의개요 배열과포인터 포인터의구조 실무응용예제 C 2

OCW_C언어 기초

슬라이드 1

JAVA PROGRAMMING 실습 02. 표준 입출력

11장 포인터

Microsoft PowerPoint - chap06-1Array.ppt

ABC 3장

구조체정의 자료형 (data types) 기본자료형 (primitive data types) : char, int, float 등과같이 C 언어에서제공하는자료형. 사용자정의자료형 (user-defined data types) : 다양한자료형을묶어서목적에따라새로운자료형을

PowerPoint 프레젠테이션

untitled

K&R2 Reference Manual 번역본

기초컴퓨터프로그래밍

Microsoft PowerPoint - chap03.ppt

3. 1 포인터란 3. 2 포인터변수의선언과사용 3. 3 다차원포인터변수의선언과사용 3. 4 주소의가감산 3. 5 함수포인터

학습목차 2.1 다차원배열이란 차원배열의주소와값의참조

쉽게풀어쓴 C 언어 Express 제 4 장변수와자료형 이번장에서학습할내용 제 4 장변수와자료형 제 4 장변수와자료형 * 변수와상수의개념이해 * 자료형 * 정수형 * 실수형 * 문자형 * 기호상수사용 * 오버플로우와언더플로우이해 이번장에서는변수와각종자료형을살펴봅니다.

<4D F736F F F696E74202D20C1A633C0E52043C7C1B7CEB1D7B7A5B1B8BCBABFE4BCD2>

프로그래밍개론및실습 2015 년 2 학기프로그래밍개론및실습과목으로본내용은강의교재인생능출판사, 두근두근 C 언어수업, 천인국지음을발췌수정하였음

<4D F736F F F696E74202D2032C1D6C2F72D32C2F7BDC32028B0ADC0C7C0DAB7E D20BAAFBCF6BFCD20BFACBBEAC0DA>

03 상수, 변수, 자료형

C 프로그래밊 개요


A Dynamic Grid Services Deployment Mechanism for On-Demand Resource Provisioning

KNK_C_05_Pointers_Arrays_structures_summary_v02

금오공대 컴퓨터공학전공 강의자료

Microsoft PowerPoint - 제11장 포인터(강의)

Microsoft PowerPoint - lec2.ppt

Microsoft PowerPoint - chap-11.pptx

제 11 장포인터 유준범 (JUNBEOM YOO) Ver 본강의자료는생능출판사의 PPT 강의자료 를기반으로제작되었습니다.

C 프로그램의 기본

4. 1 포인터와 1 차원배열 4. 2 포인터와 2 차원배열 4. 3 포인터배열 4. 4 포인터와문자그리고포인터와문자열

The C++ Programming Language 4 장타입과선언 4.11 연습문제 Hello,world! 프로그램을실행시킨다. 프로그램이컴파일되지않으면 B3.1 을참고하자. #include<iostream> //#include 문, 헤더파일, 전처리지시

PowerPoint Presentation

쉽게 풀어쓴 C 프로그래밍

Microsoft PowerPoint - chap-03.pptx

Microsoft PowerPoint - 제11장 포인터

컴파일러

슬라이드 1

PowerPoint Template

0. 표지에이름과학번을적으시오. (6) 1. 변수 x, y 가 integer type 이라가정하고다음빈칸에 x 와 y 의계산결과값을적으시오. (5) x = (3 + 7) * 6; x = 60 x = (12 + 6) / 2 * 3; x = 27 x = 3 * (8 / 4

프로그램을 학교 등지에서 조금이라도 배운 사람들을 위한 프로그래밍 노트 입니다. 저 역시 그 사람들 중 하나 입니다. 중고등학교 시절 학교 도서관, 새로 생긴 시립 도서관 등을 다니며 책을 보 고 정리하며 어느정도 독학으르 공부하긴 했지만, 자주 안하다 보면 금방 잊어

Microsoft PowerPoint - Lesson2.pptx

Microsoft PowerPoint - 2주차-1차시 (강의자료) ch01 - C Programming 기초 (part 2)

Microsoft PowerPoint - Chapter_05.pptx

Microsoft PowerPoint - Perpect C 02.ppt [호환 모드]

ABC 2장

슬라이드 1

11장 포인터

버퍼오버플로우-왕기초편 3.c언어에서버퍼사용하기 버퍼는 임시기억공간 이라는포괄적인개념이기때문에여러곳에존재할수있습니다. 즉, CPU 에도버퍼가존재할수있으며, 하드디스크에도존재할수있고, CD- ROM 이나프린터에도존재할수있습니다. 그리고앞의예제에서보신바와같이일반프로그램에도

Microsoft PowerPoint - c2.ppt

10장. 구조체


Microsoft PowerPoint - chap-05.pptx

Microsoft PowerPoint - e pptx

본 강의에 들어가기 전

1 장 C 언어복습 표준입출력배열포인터배열과포인터함수 const와포인터구조체컴파일러사용방법 C++ 프로그래밍입문

윤성우의 열혈 TCP/IP 소켓 프로그래밍

Microsoft PowerPoint - chap11.ppt [호환 모드]

Transcription:

#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

학습목표 변수와상수의개념에대해알아본다. 리터럴상수, 매크로상수, const 변수에대해알아본다. C 언어의데이터형에대해알아본다. 2

목차 변수와상수 변수 상수 데이터형 문자형 정수형 실수형 sizeof 연산자 3

변수와상수 변수는값이변경될수있는데이터를말하고, 상수는값이변경될수없는데이터를말한다. 4

변수와상수 변수 데이터를보관해둘필요가있을때, 변수를사용한다. 5

변수와상수 변수 데이터를보관하기위해서메모리를사용한다. 메모리는연속된데이터바이트의모임을말하며, 메모리의각바이트는주소를갖는다. 프로그램에서사용되는모든데이터는바이트단위의크기를가지며, 데이터값의형식에따라크기가다르다. 6

변수와상수 변수 저장될값의데이터형에따라필요한만큼메모리를할당받고, 이름을붙여둔다. " 변수를선언한다." 변수를선언하고나면변수의이름을이용해서메모리에접근할수있다. 7

변수와상수 변수의선언 기본데이터형 문자형 : char 정수형 : short, int, long 실수형 : float, double 8

변수와상수 식별자규칙 변수명이나함수명과 같은이름을식별자라고한다. 9

변수와상수 식별자규칙 식별자를만들기위한규칙 식별자는반드시영문자, 숫자, 밑줄기호 (_) 만을사용해야한다. 식별자의첫글자는반드시영문자또는밑줄기호 (_) 로시작해야한다. 식별자는숫자로시작해서는안된다. 식별자에는밑줄기호 (_) 를제외한다른기호를사용할수없다. 식별자는대소문자를구분해서만들어야한다. name, Name, NAME 은모두다른이름의식별자로간주한다. C 언어의키워드는식별자로사용할수없다. 변수의선언문은다른모든문장보다앞에위치해야한다. 10

변수와상수 식별자규칙 키워드예약어 11

변수와상수 변수선언의예 올바른변수선언 잘못된변수선언 12

변수와상수 변수선언의예 13

변수와상수 변수의초기화 변수는따로초기화를하지않으면쓰레기값을갖는다. 14

변수와상수 변수의초기화 변수의초기화 (initialization) 변수가처음메모리에할당될때값을지정한다. 15

변수와상수 변수의초기화 변수의초기화및변수의사용방법 1: /* Ex03_01.c */ 2: #include <stdio.h> 3: 4: int main(void) 5: { 6: int num1; 7: int num2 = 10; 8: 9: printf(" num1 = %d, num2 = %d\n ", num1, num2); 10: num1 = 100; 11: num2 = 200; 12: printf(" num1 = %d, num2 = %d\n ", num1, num2); 13: 14: return 0; 15: } 초기화되지않은정수형변수초기화된정수형변수 변수에값대입 16

변수와상수 상수 (Constant) 리터널상수 17

변수와상수 상수 (Constant) 여러가지리터널상수 1: /* Ex03_02.c */ 2: #include <stdio.h> 3: 4: int main(void) 5: { 6: char ch = '\x41'; 7: int num = 0x7b; 8: unsigned int u_num = 123U; 9: long l_num = 1234567L; 10: double f_num1 = 12.34; 11: double f_num2 = 123.4567e-1; 12: float f_num3 = 12.34F; 13: 14: printf("ch = %c\n", ch); 15: printf("num = %d, %o, %x\n", num, num, num); 16: printf("u_num = %u\n", u_num); 17: printf("l_num = %d\n", l_num); 18: printf("f_num1 = %f, %e, %g\n", f_num1, f_num1, f_num1); 19: printf("f_num2 = %e\n", f_num2); 20: printf("f_num3 = %f\n", f_num3); 21: 22: return 0; 23: } 리터널상수로초기화된변수 18

변수와상수 상수 (Constant) 출력에사용되는여러가지문자열 19

변수와상수 매트로상수 #define 문으로정의되는상수 매크로상수의사용예 20

변수와상수 매트로상수 #define 문은전처리기에의해서처리된다. 21

변수와상수 상수 (Constant) 매크로상수의정의및사용 1: /* Ex03_03.c */ 2: #include <stdio.h> 3: 4: #define MAX 100 5: 6: int main(void) 7: { 8: int num1 = MAX; 9: int num2 = MAX - 1; 10: int num3 = -MAX; 11: 12: printf("num1 = %d\n", num1); 13: printf("num2 = %d\n", num2); 14: printf( num3 = %d\n, num3); 15: 16: printf("max = %d\n", MAX); 17: 18: return 0; 19: } 매크로상수정의 MAX 를 100 으로바꿔서처리 안의 MAX 는 100 으로바뀌지않음 22

변수와상수 상수 (Constant) #defne 문은 C 의문장이아니기때문에 #defne 문의끝에는세미콜론 (;) 이필요없다. 23

변수와상수 const 변수 값을변경할수없는변수 const 변수의사용예 24

변수와상수 상수 (Constant) const 변수의선언및사용 1: /* Ex03_04.c */ 2: #include <stdio.h> 3: 4: int main(void) 5: { 6: const double pi = 3.14; 7: const int max; 8: 9: printf("pi = %f\n", pi); 10: printf("max = %d\n", max); 11: 12: pi = 3.1415; 13: max = 100; 14: 15: return 0; 16: } Const 변수선언초기화되지않았음으로쓰레기값을가짐 Const 변수는변경할수없다. 25

변수와상수 기호상수의장점 이름이있는상수를기호상수라고한다. 이름이있는상수를사용하면프로그램을수정하기쉽다. 이름이있는상수를 사용하면프로그램을 알아보기쉽다. 26

데이터형 (Data Type) C 프로그램에서사용되는모든변수나값은정해진데이터형을갖는다. 데이터형에의해서주어진값의이진표현이결정된다. 27

데이터형 (Data Type) 기본데이터형 (primitive data type) 문자형 : char 정수형 : short, int, long 실수형 : float, double 파생데이터형 (derived data type) 배열, 포인터 사용자정의형 (user-defined data type) 구조체, 공용체, 열거체 28

데이터형 (Data Type) 문자형 문자의 ASCII 코드확인 1: /* Ex03_05.c */ 2: #include <stdio.h> 3: 4: int main(void) 5: { 6: char ch; Char 형변수선언 7: 8: scanf("%c", &ch); 9: printf("%c 문자의 ASCII 코드 : %d (%x)\n", ch, ch, ch); 10: 11: return 0; 12: } ASCII 코드출력 29

데이터형 (Data Type) 특수문자 ASCII 코드중특별한용도로사용되는특수문자 (Escape sequence) 는 \ 와함께표현한다. 30

데이터형 (Data Type) 특수문자 특수문자 31

데이터형 (Data Type) 특수문자 ASCII 코드, MBCS, 유니코드 32

데이터형 (Data Type) 정수형 short 형의크기 int 형의크기 long 형의크기 정수형은 signed 형과 unsigned 형으로나누어지는데, signed 키워드는생략가능하다. 33

데이터형 (Data Type) 정수형의표현 정수형중부호있는정수형은최상위비트를부호비트 (sign bit) 로사용한다. 부호없는정수형은최상위비트를값을저장하는용도로사용한다. 34

데이터형 (Data Type) 정수형의표현 Singed 와 unsigned 비교 1: /* Ex03_06.c */ 2: #include <stdio.h> 3: 4: int main(void) 5: { 6: short num1 = -10; 7: unsigned short num2 = num1; 8: 9: printf(" 부호있는정수 : %d\n", num1); 10: printf(" 부호없는정수 : %d\n", num2); 11: 12: return 0; 13: } Short 형변수에음수 -10 저장음수이므로최상위비트가 1 로설정 Unsigned short 형변수에 -10 저장최상위비트가 1 이지만음수가아닌 65526 임 35

데이터형 (Data Type) 데이터형의유효범위 유효범위 36

데이터형 (Data Type) 정수형의표현 Short 형과 unsigned short 형의오버플로우확인 1 1: /* Ex03_07.c */ 2: #include <stdio.h> 3: 4: int main(void) 5: { 6: short num1 = 32767; 7: short num2 = -32768; 8: unsigned short num3 = 65535; 9: unsigned short num4 = 0; 10: 11: num1 = num1 + 1; 12: num2 = num2-1; 13: num3 = num3 + 1; 14: num4 = num4-1; 15: 16: printf("num1 = %d\n", num1); 17: printf("num2 = %d\n", num2); 18: printf("num3 = %d\n", num3); 19: printf("num4 = %d\n", num4); 20: 21: return 0; 22: } Short 형의최대값으로초기화 Short 형의최소값으로초기화 Unsigned short형의최대값으로초기화 Unsigned short형의최소값으로초기화 오버플로우발생 37

데이터형 (Data Type) 정수형의표현 데이터형의유효범위를넘어서는것오버플로우발생시항상유효범위내의값으로설정되어버린다. 38

데이터형 (Data Type) 오버플로우 Short 형의언더플로우 39

데이터형 (Data Type) 오버플로우 short 형과 unsigned short 형의유효범위 40

데이터형 (Data Type) 오버플로우 short 형유효범위의이진표현 41

데이터형 (Data Type) limits.h limits.h 의내용을정리 42

데이터형 (Data Type) limits.h Short 형과 unsigned short 형의오버플로우확인 2 1: /* Ex03_08.c */ 2: #include <stdio.h> 3: #include <limits.h> 4: 5: int main(void) 6: { 7: short num1 = SHRT_MAX; 8: short num2 = SHRT_MIN; 9: unsigned short num3 = USHRT_MAX; 10: unsigned short num4 = 0; 11: 12: num1 = num1 + 1; 13: num2 = num2-1; 14: num3 = num3 + 1; 15: num4 = num4-1; 16: 17: printf("num1 = %d\n", num1); 18: printf("num2 = %d\n", num2); 19: printf("num3 = %d\n", num3); 10: printf("num4 = %d\n", num4); 21: 22: return 0; 23: } SHRT_MAX 등의매트로상수가정의된헤더포함 SHRT_MAX 는 short 형의최대값 SHRT_MAX 는 short 형의최소값 USHRT_MAX 는 unsigned short 형의최대값 43

데이터형 (Data Type) 실수형 실수의표현 부동소수점방식을주로사용 실수의정밀도 : 단정도 (float 형 ) 와배정도 (double 형 ) 44

데이터형 (Data Type) 실수형 Float 형과 double 형의정밀도비교 1: /* Ex03_09.c */ 2: #include <stdio.h> 3: 4: int main(void) 5: { 6: float pi1 = 3.141592653589793; 7: double pi2 = 3.141592653589793; 8: 9: printf("float 형의 pi 값 : %f\n", pi1); 10: printf("double 형의 pi 값 : %f\n", pi2); 11: 12: printf("float 형의 pi 값 : %30.25f\n", pi1); 13: printf("double 형의 pi 값 : %30.25f\n", pi2); 14: 15: return 0; 16: } %f 는소수점이하 6 자리까지출력 %30.25f 는소수점이하 25 자리출력 45

데이터형 (Data Type) 실수의오버플로우 Float 형의오버플로우와언더플로우 1: /* Ex03_10.c */ 2: #include <stdio.h> 3: 4: int main(void) 5: { 6: float num1 = 3.5e39; 7: float num2 = 1.8e-39; 8: 9: printf("num1 = %30.25f\n", num1); 10: printf("num2 = %30.25f\n", num2); 11: 12: return 0; 13: } Float 형으로표현할수없는값 46

데이터형 (Data Type) sizeof 연산자 주어진값이나데이터형의바이트크기를구한다. 47

데이터형 (Data Type) sizeof 연산자 Sizeof 연산자의사용 1: /* Ex03_11.c */ 2: #include <stdio.h> 3: 4: int main(void) 5: { 6: char ch; 7: int num; 8: double fnum; 9: 10: printf("ch 의바이트크기 : %d\n", sizeof ch); 11: printf("num 의바이트크기 : %d\n", sizeof num); 12: printf("fnum의바이트크기 : %d\n", sizeof fnum); 13: 14: printf("3.14f의바이트크기 : %d\n", sizeof 3.14f); 15: 16: printf("char 형의바이트크기 : %d\n", sizeof(char)); 17: printf("short 형의바이트크기 : %d\n", sizeof(short)); 18: printf("int 형의바이트크기 : %d\n", sizeof(int)); 19: printf("long 형의바이트크기 : %d\n", sizeof(long)); 20: printf("float 형의바이트크기 : %d\n", sizeof(float)); 21: printf("double 형의바이트크기 : %d\n", sizeof(double)); 22: 23: return 0; 24: } 값이나데이터형의크기를구하려면 Sizeof 사용 48

학습정리 변수와상수 변수 : 값이변경될수있는데이터를말하며, 값을보관하기위해서메모리를사용한다. 상수 : 프로그램에서값이변경되지않는요소를말하며, 리터럴상수와매크로상수, const 변수가있다. 데이터형 49

수고하셨습니다. 질문있습니까? NEXT Chapter 4 장. 연산자 50