박성진 paksj@kangwon.ac.kr 컴퓨터 프로그래밍 기초 [03] 변수와 자료형 박성진 paksj@kangwon.ac.kr
변수란? 변수 (variable) 저장된 값의 변경이 가능한 공간 상수 (constant) 저장된 값의 변경이 불가능한 공간 DBLab Template by Suan
변수의 이름 ○ int a; ○ int num1; ○ int num2; ○ float frYing_Pan; X float 3points; X int num dem; X char for; 식별자 (identifier): 식별할 수 있게 해주는 이름 알파벳 문자와 숫자, 밑줄 문자 _로 구성 첫 번째 문자는 반드시 알파벳 또는 밑줄 문자 _ 대문자와 소문자를 구별 C 언어의 키워드와 똑같은 이름은 허용되지 않 는다. DBLab Template by Suan
자료형이란? 데이터의 형태에 따라 다른 자료형이 필요함! 자료형 설명 바이트수 범위 short short형 정수 2 정수형 부호있음 short short형 정수 2 -32768~32767 int 정수 4 -2147483648~2147483647 long long형 정수 부호없음 unsigned short 부호없는 short형 정수 0~65535 unsigned int 부호없는 정수 0~4294967295 unsigned long 부호없는 long형 정수 문자형 char 문자 및 정수 1 -128~127 unsigned char 문자 및 부호없는 정수 0~255 부동소수점형 float 단일정밀도 부동소수점 1.2E-38~3.4E38 double 두배정밀도 부동소수점 8 2.2E-308~1.8E308 long double DBLab Template by Suan
예제 1 DBLab Template by Suan
예제 1 DBLab Template by Suan
ASCII Table (아스키 코드표) ASCII( American Standard Code for Information Interchange) 1968년 제정된 미국 문자 표준코드체계이다. 컴퓨터에서 영문자, 숫자, 그 외 기호를 표현하기 위한 표준 코드로서, 사실상 PC에서는 세계 표준코드이다. DBLab Template by Suan
ASCII Table (아스키 코드표) DBLab Template by Suan
예제 2 DBLab Template by Suan
예제 2 DBLab Template by Suan
unsigned 양수의 값만을 나타냄을 의미 unsigned int speed; // 부호없는 int형 unsigned distance; // unsigned int distance와 같다. unsigned short players; // 부호없는 short형 unsigned long seconds; // 부호없는 long형 DBLab Template by Suan
오버플로우 (Overflow) 변수가 나타낼 수 있는 범위를 넘는 숫자를 저장하려고 할 때 발생 DBLab Template by Suan
상수를 2진수, 8진수, 16진수 표현 10진수 시스템에서는 10자리 숫자 (0부터 9까지)를 사용하다. 10진수 시스템에서는 10자리 숫자 (0부터 9까지)를 사용하다. Ex) 30= 30 10 2진수 시스템은 0과 1의 2자리 숫자로 만 구성된다. (컴퓨터에서 가장 일반적으로 사용한다.) 16진수 시스템은 16자리 숫자 또는 문 자 (0-9과 A-F)를 사용하다. DBLab Template by Suan
예제 3 (“0x…”는 숫자가 16진수임을 나타낸다) DBLab Template by Suan
예제 3 DBLab Template by Suan
기호 상수 #define EXCHANGE_RATE 1120 OR const int EXCHANGE_RATE = 1120 DBLab Template by Suan
printf()안에서 사용하는 이스케이프 시퀀스 제어 문자 이름 제어 문자 표기 값 의미 널문자(NULL) \0 문자열의 끝을 표시 경고(bell) \a 7 "삐“하는 경고 벨소리 발생 백스페이스(backspace) \b 8 커서를 현재의 위치에서 한 글자 뒤로 옮긴다. 수평탭(horizontal tab) \t 9 커서의 위치를 현재 라인에서 설정된 다음 탭 위치로 옮긴다. 줄바꿈(newline) \n 10 커서를 다음 라인의 시작 위치로 옮긴다. 수직탭(vertical tab) \v 11 설정되어 있는 다음 수직 탭 위치로 커서를 이동 폼피드(form feed) \f 12 주로 프린터에서 강제적으로 다음 페이지로 넘길 때 사용된다. 캐리지 리턴(carriage return) \r 13 커서를 현재 라인의 시작 위치로 옮긴다. 큰따옴표 \“ 34 원래의 큰따옴표 자체 작은따옴표 \‘ 39 원래의 작은따옴표 자체 역슬래시(back slash) \\ 92 원래의 역슬래시 자체 DBLab Template by Suan
실습 1. 사용자에게 16진수 형태로 2개의 정수를 받아서 덧셈한 결과를 10진수와 16진수로 출력해보세요. 힌트) 16진수 형태지정자 >> %x 2. 사용자에게 2개의 실수를 받아서 각 실수의 정수부를 더한 값을 출력해보세요. 힌트) sum = (int)(a + b); DBLab Template by Suan