русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Операторы перехода


Дата добавления: 2013-12-23; просмотров: 811; Нарушение авторских прав


...

Оператор ветвления switch

...

Оператор ветвления if

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

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

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

else оператор_N;

 

if служит для разветвления программы на два направления. Если некоторое условие выполняется, то программа идет в одну сторону, если не выполняется - то в другую. Вот сразу пример, определяющий, четное или нечетное число ввел пользователь:

...

class Class1 {

...

static void Main(string[] args) {

//преобразование строки в целое число

int k = Int32.Parse(Console.ReadLine());

if(k%2==0) {

Console.WriteLine("Четное число");

}

else {

Console.WriteLine("Нечетное число");

}

Console.ReadLine();

} }

Как и в других C-подобных языках, фигурные скобки можно не писать в случае одного оператора. Также написание веточки else тоже не является необходимым - все зависит от конкретной задачи.

С# требует, чтобы условные операторы принимали в качестве условий только булевы значения. Операторы сравнения: больше чем (>), меньше чем (<) или равно (= =) достаточно понятны и просты в использовании.

Оператор if в инструкции сравнения может применять несколько инст­рукций, объединенных логическими операторами. В качестве после­дних используются операторы (&&—И), (|| —ИЛИ) и (! —НЕ).

 

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

case константное_выр_1:

[операторы_1; оператор_перехода_1;]

case константное_выр_K:

[операторы_K; оператор_перехода_K;]

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

}

Оператор switch примеряется тогда, когда программа должна разделится более чем на два направления (т. е. будем двигаться или сюда, или сюда, или сюда). Логика оператора switch следующая: «найти значение, соответствую­щее переменной для сравнения, и выполнить соответствующее действие». Иными словами, он работает как оператор выбора нужного действия.



Пример:

 

int k = Int32.Parse(Console.ReadLine());

Console.WriteLine(k.ToString());

switch (k){

case 1:

case 2:

Console.WriteLine("Неудовлетворительно");

break;

case 3:

Console.WriteLine("Удовлетворительно");

break;

case 4:

Console.WriteLine("Хорошо");

break;

case 5:

Console.WriteLine("Отлично");

break;

default:

Console.WriteLine("Ошибка");

break;

}

В приведенном примере в зависимости от введенного пользователем числа на экран выводится та или иная оценка. Если число k не лежит в промежутке от 1 до 5, то выполняются операторы по метке default и выводится надпись "Ошибка". Метка default не обязательна. Обратите внимание на оператор break. Если в некоторой метке case или default есть операторы, то написание break обязательно. Так, в следующих двух кусках кода есть ошибки:

...

case 1:

Console.WriteLine("Совсем неудовлетворительно");

//Ошибка! Тут пропушен break

case 2:

Console.WriteLine("Неудовлетворительно");

break;

...

...

default:

Console.WriteLine("...");

//Ошибка! Тут пропушен break

}

Для придания программе большей чита­бельности создание переменных, необходимых для использования, лучше всего объявлять непосредственно перед их применением. Так, если каждый блок case использует свой набор переменных, то и объяв­ление переменных следует делать внутри блоков case.

В приведенном примере переменная k была целочисленного типа. Если вам необходимо использовать в качестве условия оператора switch перемен­ную строкового типа, то вы можете сделать это следующим образом:

саsе "Сергей":

Если строк для сравнения много, то по аналогии с целочисленной переменной k используйте несколько инструкций case.

Вот пример использования строковой переменной в качестве условия оператора switch.

 

classMyClass {

static void Main (string[] args) {

string user;

user = Console.ReadLine();

switch (user) {

case "userl":

Console.WriteLine("Здравствуйте пользователь один"); break;

case "user2":

Console. WriteLine ("Здравствуйте пользователь два") ; break;

case "user3":

Console . WriteLine ("Здравствуйте пользователь три") ; break;

default:

Console.WriteLine("Здравствуйте новый пользователь"); break;

}}}

В данном случае для идентификации пользователя вам необходимо применить не числовое значение, а строку. Если вы введете строку «userl», то на экране появится сообщение «Здравствуйте пользователь один».

 

Операторов перехода, позволяющих прервать естественный порядок выполнения операторов блока, в языке C# несколько.



<== предыдущая лекция | следующая лекция ==>
Операторы | Цикл for


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.004 сек.