Презентация на тему "Язык программирования Си. Приведение типов, операции, потоковый ввод-вывод" 11 класс

Презентация: Язык программирования Си. Приведение типов, операции, потоковый ввод-вывод
1 из 29
Ваша оценка презентации
Оцените презентацию по шкале от 1 до 5 баллов
  • 1
  • 2
  • 3
  • 4
  • 5
3.0
1 оценка

Комментарии

Нет комментариев для данной презентации

Помогите другим пользователям — будьте первым, кто поделится своим мнением об этой презентации.


Добавить свой комментарий

Аннотация к презентации

Интересует тема "Язык программирования Си. Приведение типов, операции, потоковый ввод-вывод"? Лучшая powerpoint презентация на эту тему представлена здесь! Данная презентация состоит из 29 слайдов. Средняя оценка: 3.0 балла из 5. Также представлены другие презентации по информатике для 11 класса. Скачивайте бесплатно.

Содержание

  • Презентация: Язык программирования Си. Приведение типов, операции, потоковый ввод-вывод
    Слайд 1

    Язык программирования Си Приведение типов, операции Потоковый ввод-вывод Югов Иван Олегович МОУ Гимназия №10, г. Тверь

  • Слайд 2

    Приведение типов

    Переменной (параметру функции, результату функции и т. п.) присваивается значение, имеющее не её тип: char K = 100; shortP = K; long longT = 100L; floatR = 3; doubleZ = R; floatBound() {return10;} Это возможно, т. к. программа произведёт приведение типов — преобразует (приведёт) передаваемое значение к требуемому типу. Приведение типов выполняется автоматически.

  • Слайд 3

    Возможны проблемы: short P = 500; charK = P; Значение может выходить за рамки назначаемого типа — переполнение. При этом: либо геренируется ошибка при выполнении программы (Runtime Error); либо в результате получается неверное значение. Контролируйте приведение типов.

  • Слайд 4

    Приведения, не вызывающие проблем: «коротких» целочисленных типов — к более «длинным» с такой же знаковостью (расширение типа): short ← char, unsigned long long ← unsigned short; «коротких» вещественных типов — к более «длинным» (расширение типа): double ← float, long double ← double; целых типов — к вещественным достаточной точности: float ← char, float ← short, double ← long.

  • Слайд 5

    Возможны переполнения при приведении: «длинных» числовых типов — к более «коротким» (сужение типа): char ← long (500), float ← double (7.5E+50); беззнаковых целочисленных типов — к знаковым целочисленным: signed short ← unsigned short (40000); знаковых целочисленных типов — к беззнаковым целочисленным: unsigned char ← signed char (-1).

  • Слайд 6

    Возможны потери точности при приведении: вещественных типов — к целочисленным (отбрасывается дробная часть): short ← float (6.9); целочисленных типов — к вещественным недостаточной точности (потеря младших разрядов): float ← long (1000000000), double ← long long (200000000000000000).

  • Слайд 7

    Можно явно указать тип, к которому нужно преобразовать значение (операция приведения типа): char K = 120; P = (short)K; Z = (unsigned long long)40000; return (_Bool)F; При приведении числового типа к типу _Bool значение 0 остаётся 0, любое другое — преобразуется к значению 1. Явное указание типа не предотвращает возможных проблем.

  • Слайд 8

    Операции

    Группы операций (операторов): арифметические (сложение, умножение…); сравнения («равно», «меньше»…); логические («не», исключающее «или»…); битовые (сдвиги, битовые логические…); присваивания; прочие (индекс, разыменование, приведение типа, инкремент…).

  • Слайд 9

    Свойства операций

    Операнд — величина, над которой выполняется операция. По числу операндов операции бывают: унарные (1 операнд): –F, (short)Z, i++; бинарные (2 операнда): a = b, 7 – t, K >> 4, L & 0xFC; тернарные (3 операнда): F ? a : b.

  • Слайд 10

    По способу записи унарные операции бывают: префиксные — записываются перед операндом: !K, (float)Y, ~6, –F; постфиксные — записываются после операнда: i++, j––.

  • Слайд 11

    Приоритет

    Приоритет — свойство операции, влияющее на порядок вычисления её результата по отношению к другим операциям. Приоритет выражается числом. Больше число — выше приоритет. Операция вычисляется только после того, как над её операндами вычислены все операции с бо́льшим приоритетом: z = C + A * (long)x + B * (long)y; 16 16 16 16 16 16 16 14 14 2 12 12 13 13

  • Слайд 12

    Порядок вычисления, как правило, такой: Унарные. Арифметика, сдвиги. Логика: сравнения, битовая, обычная. Условие. Присваивания. Приоритет обычно соответствует «естественному» порядку их понимания. Приоритет можно менять с помошью скобок (): R = (2 + 2) * 2;

  • Слайд 13

    Ассоциативность

    Ассоциативность — свойство операции, означающее порядок вычисления в цепочке операций с таким же приоритетом. Бывает: слева направо: a + 7 – 2 + 6 – f — 2; справа налево: a = b = c = d = 0. На порядок вычисления операций влияют их приоритет и ассоциативность. z = C + A * (long)x + B * (long)y; 16 16 16 16 16 16 16 14 12 > 13 > 13 >

  • Слайд 14

    Ассоциативность операций обычно соответствует «естественному» порядку их понимания: Унарные префиксные — справа налево. Унарные постфиксные — слева направо. Присваивания — справа налево. Остальные бинарные — слева направо.

  • Слайд 15

    Арифметические операции

    Определены 5 арифметических операций: сложение (+): 5 + 6, a + b + c, 1.5 + K; вычитание (–): 9.0 – 7.4, -6E-3 – A; умножение (*): 10 * a, k * x; деление (/): 100 / 3, Prime / 5, 4.2 / 0.6; получение остатка от деления (деление по модулю) (%): 100 % 3, U % p. Операнды целые или вещественные (для % — только целые). Тип результата — «больший» из типов операндов. Если появляется «минус», то знаковый.

  • Слайд 16

    Смена знака

    Определены 2 операции смены знака: плюс (+): +b, +(e - 2); минус (смена знака) (–): –Y, -(B + 2). Операнды целые или вещественные. Тип результата — как у операнда. Если появляется «минус», то знаковый. Возможно расширение типа.

  • Слайд 17

    Битовый сдвиг

    Определены 2 операции битового сдвига: сдвиг вправо (>>): A >> 7, 0xFF >> p; сдвиг влево (

  • Слайд 18

    Сдвиги используются в операциях над битами, а также для быстрого умножения и деления целых чисел на степени двойки: K > 10~ P / 1024 (для положительных P) P >> 10~ (P - 1) / 1024 (для отрицательных P)

  • Слайд 19

    Операции сравнения

    Операнды логического типа (целые — 0 или 1), результат логического типа. У операций «равно» и «не равно» приоритет ниже, чем у остальных операций сравнения. Не путайте сравнение на равенство (==) с присваиванием (=). Определены 6 операций сравнения: равно (==); больше (>); меньше (=).

  • Слайд 20

    Логические операции

    Определены 7 логических операций: Операции «НЕ» — префиксные: ~P, !(K > 5). Типы операндов и результата битовых операций — int или long long, логических — логический. Логические: «НЕ» (!); «И» (&&); «ИЛИ» (||). Битовые: «НЕ» (~). «И» (&); «ИЛИ» (|); исключающее «ИЛИ» (^).

  • Слайд 21

    Приращения

    Определены 4 операции приращения: префиксный инкремент (++): ++P; префиксный декремент (––): ––P; постфиксный инкремент (++): P++; постфиксный декремент (––): P––. Увеличивают (уменьшают) значение операнда на единицу. Операнд — только переменная. Результат того же типа, что и операнд.

  • Слайд 22

    Префиксный инкремент (декремент) изменяет значение аргумента и возвращает его новое значение: k = 7; p = ++k; k = 7; p = ––k; Постфиксный инкремент (декремент) возвращает текущее значение аргумента и только потом его изменяет: k = 7; p = k++; k = 7; p = k––; k = 8, p = 8 k = 6, p = 6 k = 8, p = 7 k = 6, p = 7

  • Слайд 23

    Присваивания

    Определены 10 операций присваивания: =, +=, –=, *=, /=, %=, >=, &=, ^=, |=. Левый операнд — только переменная. Сами возвращают присвоенное значение с типом левого операнда: a = b + (c = 6) * 2. Присваивания с операциями работают так: k += 7; аналогично k = k + 7; T *= 7 + e; аналогично T = T * (7 + e); Приоритет — низкий. Ассоциативность — справа налево.

  • Слайд 24

    Условие

    Единственная тернарная операция — условие: операнд1 ? операнд2 : операнд3 Если значение первого операнда «истинно» (не ноль), то возвращает второй операнд, иначе возвращает третий операнд: если операнд1 , то операнд2 , иначе операнд3 max = x > y ? x : y; sign = a == 0 ? 0 : a > 0 ? 1 : -1; Ассоциативность — справа налево.

  • Слайд 25

    Потоковый ввод-вывод

    Потоковый ввод-вывод доступен в C++. Используется заголовочный файл iostream. Для его использования пишем в начале кода: #include Также включаем пространство имён: usingnamespacestd; Каждая программа в операционной системе по умолчанию уже может работать с несколькими стандартными потоками.

  • Слайд 26

    Поток — способ единообразной работы с файлами, устройствами ввода-вывода и т. п. Обычно определены 4 стандартных потока: Если не указать пространство имён в заголовке, то придётся это делать перед именами потоков: std::cin, std::cout.

  • Слайд 27

    Вывод значений констант, переменных и т. п. на экран — с помощью операции >: cin >> K; Можно вводить (выводить) несколько значений: cin >> A >> B >> C;

  • Слайд 28

    Манипуляторы задают некоторые параметры ввода-вывода. Примеры: cin >> oct >> N; cout

  • Слайд 29

    Ряд параметров определяется с помощью функций: Примеры: cout.width(4); C = cout.fill();

Посмотреть все слайды

Сообщить об ошибке