Скачать презентацию Информационные технологии Лекция 3 План лекции Скачать презентацию Информационные технологии Лекция 3 План лекции

Lektsia_1-3.pptx

  • Количество слайдов: 13

Информационные технологии Лекция № 3 План лекции • Константы • Объявление переменных • Операции Информационные технологии Лекция № 3 План лекции • Константы • Объявление переменных • Операции языка С 1

Константы • Целочисленные • Десятеричные 128, 972, 0, 5 (содержит цифры от 0 до Константы • Целочисленные • Десятеричные 128, 972, 0, 5 (содержит цифры от 0 до 9) • Восьмеричные 012, 077, 0621 (начинается с 0, содержит цифры от 0 до 7) • Шестнадцатеричные 0 x 10, 0 X 23, 0 x. FE, 0 Xa 1 f, 0 x 3 d (начинается с 0 x, содержит цифры и буквы A-F) • Символьные 'a', 'Ю', 'n' • Вещественные • С плавающей точкой 23. 854, 23. , . 349 (содержит точку, отделяющую целую часть от дробной) • В экспоненциальной форме 4. 23 e 3, 2. 4 e+6, 896. 54 E 3, 4. 21 e-6, 0. 5 E-9, 1 e-6 (содержит E) • Строковые "Hello!", "Next linen", "Строка символов" 2

Объявление переменных Правила: 1. В качестве имён переменных нельзя использовать ключевые слова (операторы) языка Объявление переменных Правила: 1. В качестве имён переменных нельзя использовать ключевые слова (операторы) языка Си. 2. Имена переменных могут содержать только латинские буквы, цифры и знак подчеркивания. 3. Имена переменных не могут начинаться с цифры. 4. Переменные в блоке объявляются до первого исполняемого оператора. Формальная запись объявления переменной: <тип данных> <имя переменной> [ = <значение переменной>][, … ]; Пример: double x; // Объявление одной переменной. int i, j; // Объявление двух переменных. char c = 'A', d = 0, k; // Объявление и инициализация переменных. 3

Операции По количеству операндов: • Унарные (-a) • Бинарные (a - b) • Тернарные Операции По количеству операндов: • Унарные (-a) • Бинарные (a - b) • Тернарные (a > b ? 2 : 3) • Приоритет Сначала выполняются операции с более высоким приоритетом • Ассоциативность y=a+b*c y = (a + b) * c • Справа налево Унарные, тернарные и операции присвоения • Слева направо Остальные операции 4

Операции языка Си Операция Описание Пример Приоритет/ Ассоциативность Первичные [] Индекс массива a[2] () Операции языка Си Операция Описание Пример Приоритет/ Ассоциативность Первичные [] Индекс массива a[2] () Вызов функции sin(x) . Элемент структуры time. hour -> Элемент структуры pdata->year 1, слева направо Постфиксные ++ Постфиксное приращение i++ -- Постфиксное уменьшение j-- 2, слева направо Унарные операции ++ Префиксное приращение ++i -- Префиксное уменьшение --j sizeof Размер в байтах sizeof(data. Rec) (тип) Преобразование типа (double)I Побитовое НЕ ~flags ~ 3, справа налево 5

Операции языка Си (продолжение) Операция Описание Пример Приоритет/ Ассоциативность Унарные операции (продолжение) ! Логическое Операции языка Си (продолжение) Операция Описание Пример Приоритет/ Ассоциативность Унарные операции (продолжение) ! Логическое НЕ !EOF - Унарный минус -i & Вычисление адреса &x * Разыменование *ptr 3, справа налево Бинарные и тернарные операции Мультипликативные * Умножение a*2 / Деление b/c % Остаток от деления d % 10 4, слева направо Аддитивные + Сложение x+y - Вычитание x-y 5, слева направо 6

Операции языка Си (продолжение) Операция Описание Пример Приоритет/ Ассоциативность Побитовый сдвиг << Сдвиг влево Операции языка Си (продолжение) Операция Описание Пример Приоритет/ Ассоциативность Побитовый сдвиг << Сдвиг влево a << 2 >> Сдвиг вправо b >> c 6, слева направо Операции отношения < Меньше x<3 <= Меньше или равно x <= 0 > Больше y > -4 >= Больше или равно y >= x 7, слева направо Равенство == Равно a == b != Не равно c != 0 8, слева направо 7

Операции языка Си (продолжение) Пример Операция Описание Приоритет/ Ассоциативность Битовые & Побитовое И a Операции языка Си (продолжение) Пример Операция Описание Приоритет/ Ассоциативность Битовые & Побитовое И a & 0 x. FE 9, слева направо ^ Побитовое исключающее ИЛИ b^2 10, слева направо | Побитовое ИЛИ b|2 11, слева направо Логические && Логическое И a > 2 && a < 6 12, слева направо || Логическое ИЛИ b < 2 || b > 6 13, слева направо b > 5 ? 1 : -1 14, слева направо Условные ? : При условии 8

Операции языка Си (продолжение) Операция Описание Пример Приоритет/ Ассоциативность Присваивание = Присваивание x = Операции языка Си (продолжение) Операция Описание Пример Приоритет/ Ассоциативность Присваивание = Присваивание x = 10 *= Присваивание произведения x *= 10 /= Присваивание частного x /= 10 %= Присваивание остатка x %= 10 += Присваивание суммы x += 10 -= Присваивание разности x -= 10 <<= Присваивание левого сдвига x <<= 2 >>= Присваивание правого сдвига x >>= 2 &= Присваивание И x &= 3 ^= Присваивание исключающего ИЛИ x ^= 4 |= Присваивание ИЛИ x |= 3 15, справа налево Запятая , Запятая x = 3, y = 5 16, слева направо 9

Пояснения к некоторым операциям Постфиксные и префиксные операции уменьшения (декремент) и приращения (инкремент) • Пояснения к некоторым операциям Постфиксные и префиксные операции уменьшения (декремент) и приращения (инкремент) • При использовании префиксных операций переменная изменяется до её использования в выражении. • При использовании постфиксных операций переменная изменяется после использования её значения в выражении. Пример: int a = 4, b, c; b = ++a; // a = 5, b = 5 c = a--; // a = 4, c = 5 Побитовые операции (применяются только к целым значениям) • Действие выполняется над каждым битом отдельно 8421 & 1010 b 1100 b 10 & 12 = 8 1010 b | 1100 b ^ 1100 b 1110 b 0110 b 10 | 12 = 14 10 ^ 12 = 6 10

Пояснения к некоторым операциям (продолжение) Логические операции • Специального типа данных для логических значений Пояснения к некоторым операциям (продолжение) Логические операции • Специального типа данных для логических значений в языке Си нет. • Целочисленное значение 0 – «Лож» (False) • Отличные от 0 значения – «Истина» (True) • Истинный результат логического выражения равняется 1 • Ложный результат логического выражения равняется 0 int a = 4, b = 3, c; c = a < b; a = b && c <= 0; // c = 0 // a = 1 11

Пояснения к некоторым операциям (продолжение) Условная операция (тернарная операция) int a = 4, b Пояснения к некоторым операциям (продолжение) Условная операция (тернарная операция) int a = 4, b = 3, c; c = a > b ? a : b; // c = 4 Да Первый операнд отличается от 0? Результат равен первому операнду Нет Результат равен второму операнду int a = 4, b = 3, c; c = a <= b ? a - 2 : b++; // c = 3, b = 4 12

Пояснения к некоторым операциям (продолжение) Операции присваивания int a = 2; a *= 2; Пояснения к некоторым операциям (продолжение) Операции присваивания int a = 2; a *= 2; // a = a * 2, a = 4 a -= 3; // a = a - 3, a = 1 13