Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

Лекция Состав операторов языка C их синтаксис и семантика унаследованы от языка С

Работа добавлена на сайт samzan.net:

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 9.11.2024

Лекция

Состав операторов языка C#, их синтаксис и семантика унаследованы от языка С++. Любое выражение, завершающееся точкой с запятой является оператором.

Блок или составной оператор

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

{

  оператор_1

  ...

  оператор_N

}

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

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

Пустой оператор - это "пусто", завершаемое точкой с запятой. Он используется когда по синтаксису оператор требуется, а по смыслу- нет. Иногда полезно рассматривать отсутствие операторов как существующий пустой оператор. Синтаксически допустимо ставить лишние точки с запятой, полагая, что вставляются пустые операторы. Например, синтаксически допустима следующая конструкция:

 for (int j=1; j<5; j++) //оператор цикла

      {;;;}; //пустой оператор

Она может рассматриваться как задержка по времени, работа на холостом ходе.

Операторы выбора (ветвления)

Как в С++ и других языках программирования, в языке C# для выбора одной из нескольких возможностей используются две конструкции - if и switch. Первую из них обычно называют альтернативным выбором, вторую - разбором случаев.

Оператор if

Синтаксис оператора if:

if(выражение_1) оператор_1;

else if(выражение_2) оператор_2

...

else if(выражение_K) оператор_K

else оператор_N

Выражения if должны заключаться в круглые скобки и быть булевого типа. По правилам синтаксиса языка С++, then-ветвь оператора следует сразу за круглой скобкой без ключевого слова then, типичного для большинства языков программирования. Каждый из операторов может быть блоком - в частности, if-оператором. Поэтому возможна и такая конструкция:

if(выражение1) if(выражение2) if(выражение3) ...

Ветви else и if, позволяющие организовать выбор из многих возможностей, могут отсутствовать. Может быть опущена и заключительная else-ветвь. В этом случае краткая форма оператора if задает альтернативный выбор - делать или не делать - выполнять или не выполнять then-оператор.

Семантика оператора if проста и понятна. Выражения if проверяются в порядке их написания. Как только получено значение true, проверка прекращается и выполняется оператор (это может быть блок), который следует за выражением, получившим значение true. С завершением этого оператора завершается и оператор if. Ветвь else, если она есть, относится к ближайшему открытому if.

Примеры оператора if:

if (a<0) b=1;

if (a<b&& (a>d||a= =0) )  b=++; else {b*=a;a=0;}

if (a<b) if (a<c) m=a; else m=c; else if (b<c) m=b; else m=c;

Следует избегать проверки вещественных величин на равенство, вместо этого лучше сравнивать модуль их разности с некоторым малым числом:

float a,b;

if (a= =b) // не рекомендуется

if (Math.Abs(a-b)<1e-6)…//надежно!

Оператор switch (переключатель)

Частным, но важным случаем выбора из нескольких вариантов является ситуация, при которой выбор варианта определяется значениями некоторого выражения. Соответствующий оператор C#, унаследованный от C++, но с небольшими изменениями в синтаксисе, называется оператором switch. Вот его синтаксис:

switch(выражение)

{

  case константное_выражение_1: [операторы_1 оператор_перехода_1]

  ...

  case константное_выражение_K: [операторы_K оператор_перехода_K]

  [default: операторы_N оператор_перехода_N]

}

Выполнение оператора начинается с вычисления выражения. Тип выражения чаще всего целочисленный (включая char) или строковый. Затем управление передается первому оператору из списка, помеченному константным выражением, значение которого совпало с вычисленным.

Каждая ветвь переключателя должна заканчиваться явным оператором перехода, а именно оператором break, goto или return:

Выражение в switch должно иметь целочисленный тип (включая char) или строковый.

Ветвь default может отсутствовать. Заметьте, по синтаксису допустимо, чтобы после двоеточия следовала пустая последовательность операторов, а не последовательность, заканчивающаяся оператором перехода. Константные выражения в case должны иметь тот же тип, что и switch-выражение.

Семантика оператора switch такова. Вначале вычисляется значение switch-выражения. Затем оно поочередно в порядке следования case сравнивается на совпадение с константными выражениями. Как только достигнуто совпадение, выполняется соответствующая последовательность операторов case-ветви. Поскольку последний оператор этой последовательности является оператором перехода (чаще всего это оператор break), то обычно он завершает выполнение оператора switch. Если значение switch-выражения не совпадает ни с одним константным выражением, то выполняется последовательность операторов ветви default, если же таковой ветви нет, то оператор switch эквивалентен пустому оператору.

Разбор случаев - это часто встречающаяся ситуация в самых разных задачах. Применяя оператор switch, используйте его в правильном стиле. Заканчивайте каждую case-ветвь оператором break, но не применяйте goto.


Пример

using System;

namespace l1

{

   class Program

   {

       static void Main(string[] args)

       {

           int a, b, c;

           a = 2;

           b = 3;

           if (a < b) Console.WriteLine("a Меньше b");

              //Следующая инструкция ничего не отобразит на экране

           if (a == b) Console.WriteLine("Этого текста никто не увидит");

               Console.WriteLine();

           c=a-b;//Переменная с содержит -1

           Console.WriteLine("с содержит -1");

           if (c<0) Console.WriteLine("Значение с отрицательно");

           else if (c>=0) Console.WriteLine("Значение с неотрицательно");

           Console.WriteLine();

           c = b - a;//Переменная с содержит 1

           Console.WriteLine("с содержит 1");

           if (c < 0) Console.WriteLine("Значение с отрицательно");

           else Console.WriteLine("Значение с неотрицательно");

           Console.ReadKey();//Ожидание нажатия клавиши

       }

   }

}

Пример case

Console.WriteLine("Впиши номер Лабы");

           string y = Console.ReadLine(); считывание строки

           switch (Convert.ToInt16(y)) //Получение номера варианта

               {

               case 1:

                       laba1(); //Запуск функции лаба по работе с массивом двумерным

                       break;

               case 2: laba2();

                       break;

               case 3: laba3();

                       break;

               case 4: laba4(); //Лаба одномерный массив

                       break;

               case 5: laba5();

                       break;

               default : Console.WriteLine("Такой лабы нету повторите попытку");

                       break;

               }




1. комунальні послуги в ІІ півріччі 1997 р
2. Психика Сталина.html
3. Курсовая работа- Англо-бурская война
4. для возложения на юридическое лицо обязанности по возмещению вреда причиненного его работником необходим
5. О банках и банковской деятельности
6. Голосовая звуковая это речевые команды и сообщения громким и тихим голосом шёпотом а так же условные зв.html
7. ТЕМА 3 Современные средства вооруженной борьбы Рассм
8. М.- Гуманит. изд. центр ВЛАДОС 1998.html
9. ТЕМА- НАРУШЕНИЯ ВОДНОГО БАЛАНСА В ОРГАНИЗМЕ
10. тема и формы. 8. Коллективный трудовой договор понятие структура
11. МОДУЛЬ Питання для КПМ Становлення класичної екології та її предмет Екологічні питання в історії н
12. экономические проблемы интеллектуальной собственности
13. Воевода Ундина впоследствии уничтоженные Черевички; 3 оперы на исторический сюжет Опричник Мазе
14. Ход работы На территории России наблюдается более 30 видов опасных природных явлений
15. IВведение В мировой и отечественной практике основным видом ставок таможенных пошлин являются адвалорные
16. Реферат2
17. Реферат- Роль воображения в жизни человека.html
18.  Особенности коротковолновых антенн
19. Реферат- Понятие и состав лесного фонда
20. просвещения в Россию и их переработки в соответствии с русскими условиями