MADE FOR ALL

블로그 이미지

MSNU

변수와 자료형 - C 언어

myPPT 2016. 11. 22. 13:18

















변수와 자료형

이번 장에서 학습할 내용

변수

Q) 변수(variable)이란 무엇인가?

변수 = 상자

 변수는 물건을 저장하는 상자와 같다.

변수가 만들어지는 곳

 변수는 메인 메모리에 만들어진다.


변수가 필요한 이유

변수와 상수

 변수(variable): 저장된 값의 변경이 가능한 공간

 (예) i, sum, avg


 상수(constant): 저장된 값의 변경이 불가능한 공간

 (예) 3.14, 100, ‘A’, “Hello World!”


상수의 이름

예제

다음에 학습할 내용

자료형 

 자료형(data type): 데이터의 타입(종류)

 정수형 데이터(100) 

 실수형 데이터(3.141592)

 문자형 데이터(‘A’)

다양한 자료형

자료형의 종류

자료형의 크기

 sizeof 연산자 이용

예제

변수의 이름짓기

 식별자(identifier): 식별할 수 있게 해주는 이름 

 변수 이름

 함수 이름

식별자를 만드는 규칙

 알파벳 문자와 숫자, 밑줄 문자 _로 구성

 첫 번째 문자는 반드시 알파벳 또는 밑줄 문자 _

 대문자와 소문자를 구별

 C 언어의 키워드와 똑같은 이름은 허용되지 않는다. 

좋은 변수 이름

 변수의 역할을 가장 잘 설명하는 이름

 밑줄 방식: bank_account

 단어의 첫번째 글자를 대문자:BankAccount 

키워드

 키워드(keyword): C언어에서 고유한 의미를 가지고 있는 특별한 단어

 예약어(reserved words) 라고도 한다.

변수 선언 

 변수 선언: 컴파일러에게 어떤 변수를 사용하겠다고 미리 알리는 것

변수에 값을 저장하는 방법

변수의 초기화

변수 선언 위치

 변수는 함수의 첫부분에서만 선언할 수 있습니다.

변수의 사용

 대입 연산자를 이용하여서 값을 저장한다. 

변수의 사용

 저장된 값은 변경이 가능하다. 

예제

다음에 학습할 내용

정수형

 short, int, long 

정수형 선언의 예

 short grade; // short형의 변수를 생성한다. 

 int count; // int형의 변수를 생성한다. 

 long distance; // distance형의 변수를 생성한다. 


정수형의 범위

예제

signed, unsigned 수식자 

 unsigned

 음수가 아닌 값만을 나타냄을 의미


 (예) unsigned int





unsigned 와 signed 

unsigned 수식자

 unsigned int    speed; // 부호없는 int형 

 unsigned    distance; // unsigned int distance와 같다.

 unsigned short    players; // 부호없는 short형

 unsigned long   seconds; // 부호없는 long형

오버플로우

 오버플로우(overflow): 변수가 나타낼 수 있는 범위를 넘는 숫자를 저장하려고 할 때 발생

오버플로우

오버플로우

 규칙성이 있다.

 수도 계량기나 주행거리계와 비숫하게 동작

정수 상수

 정수 상수: 정수형의 상수

 (예) 12, 100


 정수 상수는 기본적으로 int형으로 간주

 상수의 자료형을 명시하려면 다음과 같이 한다.

다양한 진법 가능

예제 

기호 상수

 기호 상수(symbolic constant): 기호를 이용하여 상수를 표현한 것

 (예) 

 area = 3.141592 * radius * radius; 

 area = PI * radius * radius; 


 income = salary - 0.15 * salary;       

 income = salary - TAX_RATE * salary; 

 기호 상수의 장점

 가독성이 높아진다.

 값을 쉽게 변경할 수 있다.

기호 상수의 장점

기호 상수를 만드는 방법

기호 상수를 만드는 방법

중간 점검

• 정수형에 속하는 자료형을 모두 열거하라. 


• 숫자 값을 직접 사용하는 것보다 기호 상수를 사용하는 것의 이점은 무엇인가?


• 왜 정수를 하나의 타입으로 하지 않고 char, int, short, long 등의 여러 가지 타입으로 복잡하게 분류하여 사용하는가?



• 부호가 없는 unsigned int형의 변수에 음수를 넣으면 어떤 일이 벌어지는가?



• 변수가 저장할 수 있는 한계를 넘어서는 값을 저장하면 어떻게 되는가? 구체적인 예로 short형의 변수에 32768을 저장하면 어떻게 되는가?

다음에 학습할 내용

부동소수점형

 컴퓨터에서 실수는 부동소수점형으로 표현

 소수점이 떠서 움직인다는 의미

 과학자들이 많이 사용하는 과학적 표기법과 유사

실수를 표현하는 방법

 #1 고정 소수점 방식

 정수 부분을 위하여 일정 비트를 할당하고 소수 부분을 위하여 일정 비트를 할당

 전체가 32비트이면 정수 부분 16비트, 소수 부분 16비트 할당

 과학과 공학에서 필요한 아주 큰 수를 표현할 수 없다



실수를 표현하는 방법

 #2 부동 소수점 방식

 표현할 수 있는 범위가 대폭 늘어난다.

 10-38 에서 10+38

부동 소수점 형

부동 소수점 상수

 일반적인 실수 표기법

 3.141592 (double형)    

 3.141592F (float형)

 지수표기법

 1.23456e4 = 12345.6

 1.23456e-3 = 0.00123456

 유효한 표기법의 예

 1.23456 

  2. // 소수점만 붙여도 된다. 

  .28 // 정수부가 없어도 된다. 

  0e0  

  2e+10     // +나 -기호를 지수부에 붙일 수 있다. 

  9.26E3    //   

  9.26e3    // 

예제 

오버플로우와 언더플로우

부동소수점형 사용시 주의사항

 오차가 있을 수 있다!

중간 점검

• 부동 소수점형에 속하는 자료형을 모두 열거하라.


• float형 대신에 double형을 사용하는 이유는 무엇인가?


• 부동 소수점형에서 오차가 발생하는 근본적인 이유는 무엇인가?


• 12.345처럼 소수점이 있는 실수를 int형의 변수에 넣을 경우, 어떤 일이 발생하는가?


• 수식 (1.0/3.0)을 float형 변수와 double형 변수에 각각 저장한 후에 출력하여 보자. (1.0/3.0)은 0.333333.... 값을 출력하여야 한다. 소수점 몇 자리까지 정확하게 출력되는가?

다음에 학습할 내용

문자형

 문자는 컴퓨터보다는 인간에게 중요

 문자도 숫자를 이용하여 표현

 공통적인 규격이 필요하다.

 아스키 코드(ASCII: American Standard Code for Information Interchange)

 8비트를 사용하여 영어 알파벳 표현

 (예) !는 33, ‘A’는 65, ‘B’는 66, ‘a’는 97, ‘b’는 98

문자 변수

 char형의 변수가 문자 저장 

문자 입출력 예제 

예제 

제어 문자

 인쇄 목적이 아니라 제어 목적으로 사용되는 문자들

 (예) 줄바꿈 문자, 탭 문자, 벨소림 문자, 백스페이스 문자

 제어 문자를 나타내는 방법

 아스키 코드를 직접 사용




 이스케이프 시퀀스 사용


제어 문자

예제 

정수형으로서의 char형

 8비트의 정수를 저장하는데 char 형을 사용할 수 있다..


중간 점검

• C에서 문자를 나타내기 위해 사용하는 코드를 무엇이라고 하는가?


• 경고음을 출력하는 제어 문자는 무엇인가?


• 화면에 ‘\’을 출력하려면 어떻게 하는가?






'myPPT' 카테고리의 다른 글

국내 창업 성공사례  (0) 2016.12.01
무선 네트워크 기술(Wireless Network)-컴퓨터 네트워크  (0) 2016.11.24
약혼, 결혼, 이혼에 대하여  (0) 2016.11.18
논술의 개념과 대비  (0) 2016.11.14
사회복지개론(사회복지 전달체계 : 공공 부문과 민간부분)  (0) 2016.11.08
Posted by MSNU






favicon

MADE FOR ALL

  • 태그
  • 링크 추가
  • 방명록

관리자 메뉴

  • 관리자 모드
  • 글쓰기
  • 분류 전체보기 (609)
    • 러시아어 (16)
    • myPPT (414)
    • 시리즈 (166)
      • OS (14)
      • 회계 (57)
      • 경제 (22)

카테고리

PC화면 보기 티스토리 Daum

티스토리툴바