Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лекции по проге / 01_Структура программы, типы данных (3)

.pdf
Скачиваний:
30
Добавлен:
14.03.2016
Размер:
262.95 Кб
Скачать

Активная часть языка: действия

Оператор (statement) – это законченное действие на языке программирования

Сложные операторы могут включать в себя другие операторы

Примитивные операторы в языке Си завершаются точкой с запятой ;

11

Разновидности операторов

Оператор вычисления выражения, например, a = b + 1;

Пустой оператор: ;

Управляющий оператор, например,

if(a

> b) {

min

=

b;

}

12 else

{

min

=

a;

}

Разновидности операторов

Составной оператор - два или более операторов, объединенных с помощью фигурных скобок {}, например,

{

tmp = a; a = b;

b = a;

}

Синтаксически составной оператор воспринимается как единичный оператор и может использоваться в любых конструкциях, где синтаксис требует одного

13 оператора

Пассивная часть языка: данные. Понятие типа данных

Тип данных задает множество возможных значений, которые могут принимать переменные (и другие объекты) этого типа, а также определяет набор разрешенных операций для переменных (объектов) этого типа

Понятие типа применимо к переменным, константам и результатам выражений

Использование операций с неразрешенными типами данных приведет к ошибке компиляции невозможно

преобразовать ... в ... (can not convert ... to 14 ...)

Система типов данных в языке Си

Типы данных

 

 

Простые (скалярные)

 

Структурированные

Указатели

Тип

 

 

типыданных

 

типыданных

void

 

 

 

 

Арифметические

Арифметические

Перечис-

 

Объеди-

 

целочисленные

типыс плавающей

Массивы Структуры

 

лимый тип

нения

 

 

типы

точкой

 

 

 

 

 

 

 

Знаковые

Беззнаковые

 

 

 

Встроенные типы

 

 

 

данных

 

 

 

 

 

 

 

char

unsigned char

float

 

 

 

 

short int

unsigned short int

double

 

 

Типыданных,

int

unsigned int

long double

 

 

определяемые

15 long int

unsigned long int

 

 

 

пользователем

 

 

 

 

 

Арифметические типы данных

 

 

 

Тип

Диапазон

Размер

char

-128...127 (-27...27-1)

1

байт

unsigned char

0...255 (0...28)

1

байт

short int

-32768…32767(-215...215-1)

2

байта

unsigned short int

0…65535 (0...216)

2

байта

int

зависит от операционной системы,

 

 

 

в Win32 аналогичен long int

 

 

long int

-2147483648…2147483647

4

байта

 

(-231...231-1)

unsigned long int

0…4294967295 (0...232)

4

байта

float

±3,4*10±38, 7 значащих цифр

4

байта

double

±1,7*10±308, 15 значащих цифр

8

байт

long double

идентичен double

 

 

16

Константы

Константами называют неизменяемые величины определенного типа, упоминаемые в тексте программы

Например:

10, 0xA0, 3.14159, 1.45E-4, 'a', "Hello"

17

Целые константы

Тип данных: int

Формат

Примеры

Десятичный - последовательность цифр, не

 

начинающаяся с нуля, если это число не

10, 16, 255

нуль

 

Восьмеричный - последовательность цифр

012, 020,

0-7, начинающаяся с нуля

0377

Шестнадцатеричный - последовательность

0xA, 0x10,

цифр и букв A-F, начинающаяся с 0x

0xFF

18

Представление логических значений: ИСТИНА, ЛОЖЬ

Любое целое значение, отличное от нуля, считается истиной

Целое значение, равное нулю, считается ложью

19

Вещественные константы

Тип данных: double

Формат

Примеры

Десятичный:

5.7, .009, 34.

[<цифры>].[<цифры>]

 

Экспоненциальный:

.057E2, 9e-3,

[<цифры>].[<цифры>]{E|e}[+|-][<цифры>]

3.4E1

Константа 3.4E1 означает 3.4*101. Число 3.4 называют мантиссой, а 1 — порядком.

Чтобы придать целой константе вещественный тип 20 необходимо записать ее как 2f или 2.0