Операторы си шарп
C# — Операторы
Оператор — это символ, который сообщает компилятору выполнить определенные математические или логические манипуляции. C # имеет богатый набор встроенных операторов и предоставляет следующие типы операторов:
- Арифметические операторы
- Реляционные операторы
- Логические операторы
- Побитовые операторы
- Операторы присваивания
- Другие операторы
В этом учебном пособии поочередно описываются арифметические, реляционные, логические, побитовые, присваивающие и другие операторы.
Арифметические операторы
В следующей таблице показаны все арифметические операторы, поддерживаемые C #. Предположим, что переменная A содержит 10, а переменная B имеет 20, тогда —
Оператор | Описание | Пример |
---|---|---|
+ | Добавляет два операнда | A + B = 30 |
— | Вычитает второй операнд с первого | A — B = -10 |
* | Умножает оба операнда | A * B = 200 |
/ | Делит числитель на де-числитель | B / A = 2 |
% | Оператор модуля и остаток после целочисленного деления | B% A = 0 |
++ | Оператор приращения увеличивает целочисленное значение на единицу | A ++ = 11 |
— | Оператор Decrement уменьшает целочисленное значение на единицу | A— = 9 |
Реляционные операторы
В следующей таблице показаны все реляционные операторы, поддерживаемые C #. Предположим, что переменная A имеет место 10, а переменная B имеет 20, тогда —
Оператор | Описание | Пример |
---|---|---|
== | Проверяет, равны ли значения двух операндов или нет, если да, то условие становится истинным. | (A == B) не соответствует действительности. |
знак равно | Проверяет, равны ли значения двух операндов или нет, если значения не равны, условие становится истинным. | (A! = B) истинно. |
> | Проверяет, превышает ли значение левого операнда значение правого операнда, если да, тогда условие становится истинным. | (A> B) неверно. |
= | Проверяет, превышает ли значение левого операнда значение правого операнда, если да, тогда условие становится истинным. | (A> = B) неверно. |
> | Двоичный оператор правого сдвига.Значение левых операндов перемещается вправо на количество бит, заданных правым операндом. | A >> 2 = 15, что составляет 0000 1111 |
Операторы присваивания
Существуют следующие операторы присваивания, поддерживаемые C # —
Оператор | Описание | Пример |
---|---|---|
знак равно | Простой оператор присваивания, присваивает значения из правых операндов в левый операнд | C = A + B присваивает значение A + B в C |
+ = | Добавить AND присваивания, Он добавляет правый операнд в левый операнд и присваивает результат левому операнду | C + = A эквивалентно C = C + A |
знак равно | Вычитание и оператор присваивания, он вычитает правый операнд из левого операнда и присваивает результат левому операнду | C — = A эквивалентно C = C — A |
знак равно | Оператор умножения и присваивания, Он умножает правый операнд на левый операнд и присваивает результат левому операнду | C * = A эквивалентно C = C * A |
знак равно | Оператор Divide AND assign. Он делит левый операнд на правый операнд и присваивает результат левому операнду | C / = A эквивалентно C = C / A |
знак равно | Модуль и оператор присваивания, он принимает модуль с использованием двух операндов и присваивает результат левому операнду | C% = A эквивалентно C = C% A |
> = | Оператор правой смещения и назначения | C >> = 2 совпадает с C = C >> 2 |
знак равно | Оператор побитового И присваивания | C & = 2 является таким же, как C = C & 2 |
^ = | побитовое исключающее ИЛИ и оператор присваивания | C ^ = 2 является таким же, как C = C ^ 2 |
| = | побитовое включение OR и оператор присваивания | C | = 2 совпадает с C = C | 2 |
Есть несколько других важных операторов, включая sizeof, typeof и ? :поддерживается C #.
Оператор | Описание | Пример | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
размер() | Возвращает размер типа данных. | sizeof (int), возвращает 4. | |||||||||||
тип() | Возвращает тип класса. | TypeOf (StreamReader); | |||||||||||
& | Возвращает адрес переменной. | & А; возвращает фактический адрес переменной. | |||||||||||
* | Указатель на переменную. | * А; создает указатель с именем ‘a’ для переменной. | |||||||||||
? : | Условное выражение | Если условие верно? Тогда значение X: В противном случае значение Y | |||||||||||
является | Определяет, имеет ли объект определенный тип. | Если (Ford — Car) // проверяет, является ли Ford объектом класса Car. | |||||||||||
в виде | Передача без создания исключения, если сбой выполняется. | Object obj = new StringReader («Hello»); StringReader r = obj как StringReader; Приоритет оператора в C #Приоритет оператора определяет группировку терминов в выражении. Это влияет на оценку выражения. Некоторые операторы имеют более высокий приоритет, чем другие; например, оператор умножения имеет более высокий приоритет, чем оператор сложения. Например, x = 7 + 3 * 2; здесь x назначается 13, а не 20, потому что оператор * имеет более высокий приоритет, чем +, поэтому первая оценка выполняется для 3 * 2, а затем 7 добавляется в нее. Здесь операторы с наивысшим приоритетом появляются в верхней части таблицы, а нижние — внизу. Внутри выражения сначала оцениваются операторы с более высоким приоритетом. BestProgБазовые операторыСодержание1. Какие виды или категории операторов существуют в языке C#?В языке C# существуют следующие категории операторов:
2. Какие операторы принадлежат к категории арифметических операторов?В языке C# существуют следующие арифметические операторы: 3. Примеры использования операторов сложения ( + ), вычитания ( — ), умножения ( * ) и деления ( / ).Операторы сложения ( + ), вычитания ( — ), умножения ( * ) и деления ( / ) можно применять к любому встроенному числовому типу данных. Пример 1. Операции над переменными целых типов. Важно: деление целых чисел дает результат целого типа. Пример 2. Операции над переменными, где есть данные с плавающей запятой. Пример 3. Операции над переменными смешанных числовых типов. Если один из операндов имеет тип с плавающей запятой, а второй операнд имеет целый тип, то результатом будет тип с плавающей запятой. 4. Какие особенности использования оператора вычисления остатка от деления ( % )?Оператор % применяется для вычисления остатка при делении двух чисел. В отличие от языка C/C++ оператор % может быть применен к данным с плавающей запятой. Пример. 5. Примеры применения операторов инкремента ( ++ ) и декремента ( — ).Оператор инкремента ( ++ ) увеличивает значение операнда на 1 . Оператор инкремента i++ или ++i есть аналогичен оператору Оператор декремента ( — ) уменьшает значение операнда на 1 . Оператор декремента i — или —i аналогичен оператору Пример 1. Пример 2. Использование операции инкремента и декремента в выражении. Пример 3. 6. Какие особенности применения операторов отношения в C# ?Операторы отношения применяются для сравнения значений двух операндов между собой. Результатом работы операторов отношения есть значение истины ( true ) или лжи ( false ). В языке C# введены следующие операторы отношения: Пример. 7. Какие особенности применения логических операторов в языке C# ?Операнды логических операций должны относиться к типу bool . В языке C# к логическим относятся следующие операции: Пример применения логических операций. 8. Какие преимущества дает использование сокращенных логических операторов && и || ?Сокращенные логические операции && и || работают так же как и обычные логические операции & (логическое « И «) и | (логическое « ИЛИ «). Однако, в случае длинных логических выражений, эти операции разрешают сократить время выполнения и повысить эффективность кода. Это осуществляется за счет того, что после выполнения первого операнда, второй операнд выполняется по мере необходимости. Например. Рассмотрим логическое « ИЛИ » (оператор || ). Если первый операнд равен true , тогда нет смысла вычислять второй операнд, поскольку все выражение будет равно true . Так же в логическом « И » (оператор && ). Если первый операнд равен false , тогда все выражение будет равно false . Таким образом, нет необходимости вычислять второй операнд. За счет этого происходит сокращение времени обработки длинных логических выражений, которые содержат операции « И » и « ИЛИ «. Пример. Обычные логические операции & и || целесообразно использовать в тех случаях, если в программном коде обязательно нужно вычислять правый (второй) операнд. 9. Какие особенности применения оператора присваивания в программе?Простейший оператор присваивания обозначается символом ‘ = ‘ (равно). Общая форма оператора присваивания: Оператор присваивания может создавать «цепочку» присваиваний. Пример. В вышеприведенном примере значение ‘ 0.00 ‘ присваивается сначала переменной z , потом переменной y , потом переменной x . Оператор присваивания может быть составным. 10. Как работают сокращенные (составные) операторы присваивания?Сокращенные (составные) операторы присваивания позволяют упростить программирование некоторых операций присваивания. Сокращеные операторы дают более эффективный исполнительный код, поскольку левый операнд этих операторов вычисляется только один раз. В C# существуют следующие сокращенные операторы присваивания для арифметических и логических операций: Примеры применения сокращенных операторов присваивания. 11. Какие особенности применения поразрядных операторов в языке C# ?Поразрядные логические операторы позволяют оперировать отдельными битами. Поразрядные логические операторы применяются только для целочисельных операндов. В C# существуют следующие поразрядные логические операции: Поразрядные операторы с двоичными единицами и нулями работают согласно нижеследующей таблице. Пример. 12. Какие особенности применения операторов сдвига в C# ?Операторы сдвига могут применяться только к целым типам. Для выполнения сдвига двоичных разрядов в C# предусмотрено два оператора: Общая форма операторов сдвига: где число_бит – число двоичных разрядов, на которые сдвигается указанное значение. Пример. Операция сдвига влево на n разрядов множит число на 2 в степени n . Сдвиг вправо на n разрядов означает деление на 2 в степени n . Операторы отношения и логические операторыВ операторе отношения термин «отношение» означает взаимосвязь, которая может существовать между двумя значениями (больше, равно, …), а термин «логический» в логическом операторе — взаимосвязь между логическими значениями «истина» и «ложь». Поскольку операторы отношения дают истинные или ложные результаты, то они нередко применяются вместе с логическими операторами. Именно по этой причине они и рассматриваются совместно. Операторы отношения
Но значения типа bool могут сравниваться только на равенство или неравенство, поскольку истинные (true) и ложные (false) значения не упорядочиваются. Например, сравнение true > false в C# не имеет смысла. Рассмотрим пример программы, демонстрирующий применение операторов отношения и логических операторов:
Импликация — это двоичная операция, результатом которой является ложное значение только в том случае, если левый ее операнд имеет истинное значение, а правый — ложное. (Операция импликации отражает следующий принцип: истина не может подразумевать ложь). Укороченные логические операторыВ C# предусмотрены также специальные, укороченные, варианты логических операторов И и ИЛИ, предназначенные для получения более эффективного кода. Поясним это на следующих примерах логических операций. Пример демонстрирует разницу между операторами «&&» и «&», а также между «|» и «||» . лабы по информатике, егэлабораторные работы и задачи по программированию и информатике, егэ по информатике
Урок 2. Условия и множественный выборУрок # 2. C# ТеорияПростые типы данных си шарп и переводыПереводы 1. Неявный тип перевода; int myInt = 2147483647; long myLong= myInt; double myDouble = 1234.6; int myInt = (int)myDouble; double myDouble = 1234.6; int myInt = Convert.ToInt32(myDouble); C# условные операторыElse Else if Множественный выбор SwitchЗадания и лабораторные си шарпВыполнить: Запросить целое число. Проверить, является ли оно четным. Вывести результат. [Название проекта: Lesson_2Lab1 , название файла L2Lab1.cs ] Пример выполнения:
static void Main(string[] args) . int numb = Int32.Parse(Console.ReadLine()); . Добавьте блок else чтобы вывести результат при нечетном значении переменной numb . В таком случае выведите фразу «Введенное число нечетное»: Выполнить: Попросите пользователя ввести число. Проверьте, является ли введенное число положительным или оно является отрицательным. Выведите результат. Указание: Можно использовать следующие способы перевода введенного значения в числовое: [Название проекта: Lesson_2Task1 , название файла L2Task1.cs ] Пример выполнения: Выполнить: Дано двухзначное число. Вывести отдельно его десятичный разряд и разряд единиц (операторы % , / ). Указание: Не забудьте выполнить перевод введенного значения в тип integer ( Int32.Parse(. ) ). [Название проекта: Lesson_2Task2 , название файла L2Task2.cs ] Пример выполнения: Выполнить: Дано трехзначное число. Измените его десятичный разряд в 0 . Указание 1: Сначала необходимо получить отдельно все три разряда числа. Затем присвоить разряду десяток . После чего получить число из разрядов. Пример получения числа: Указание 2: Не забудьте выполнить перевод введенного значения в числовой тип ( Int32.Parse(. ) ). [Название проекта: Lesson_2Task3 , название файла L2Task3.cs ] Пример выполнения: Выполнить: Даны три целых числа. Выведите true если, по крайней мере, два из них не равны, и выведите false в обратном случае. Указание: Логический оператор не равно — это != , логическое И — это оператор && : [Название проекта: Lesson_2task4 , название файла L2Task4.cs ] Выполнить: Вводится число — размер порции кофе (1=small 2=medium 3=large). В ответ вывести цену (1 — 25 руб, 2 — 50 руб, 3 — 75 руб). Использовать оператор switch . [Название проекта: Lesson_2Lab2 , название файла L2Lab2.cs ] Пример выполнения:
. Console.WriteLine(«Coffee sizes: 1=small 2=medium 3=large»); Console.Write(«Please enter your selection: «); . . string str = Console.ReadLine(); . Выполнить: Попросите пользователя ввести номер дня недели (1, 2, 3, …, 7). Проверьте введенный номер и выведите в ответ название дня недели (Понедельник — 1, Вторник — 2, и т.д.). [Название проекта: Lesson_2Task5 , название файла L2Task5.cs ] Adblockdetector |