Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2-17(экз).docx
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
60.06 Кб
Скачать
  1. Оператор выбора, случаи его применения.

Оператор выбора позволяет сделать выбор среди многих вариантов. Он имеет следующий вид:

switch (целочисленное или строковое выражение)

{

case первое_значение:

операторы

break;

case второе_значение:

операторы

break;

. . . . . . . . . . .

default:

операторы

break;

}

В отличие от С++ после switch допускаются строковые значения. Оператор break; является во всех приведенных выше случаях обязательным.

Пример.

static void Main(string[] args)

{

string s1;

s1 = "ABC";

switch (s1)

{

case"ABC":

Console.WriteLine("Variant 1");

break;

case "DEF":

Console.WriteLine("Variant 2");

break;

default:

Console.WriteLine("Unknown ");

break;

}

Console.ReadLine();

}

  1. Ввод/вывод в консольном режиме, преобразование данных.

Для ввода/вывода в консольном режиме используют следующие методы класса Console: Write( выводимая строка ), WriteLine( выводимая строка ), ReadLine() – возвращает введенную строку. Важное обстоятельство: метод ReadLine всегда возвращает данные типа string, в случае необходимости их преобразования должны быть запрограммированы. Аргументом методов Write, WriteLine тоже должна быть символьная строка. Правда, здесь можно часто обойтись без явных преобразований. Разница между Write и WriteLine заключается в том, что после вывода строки WriteLine осуществляет автоматически переход на следующую строку на экране, Write этого не делает.

Для преобразования типов данных можно использовать методы класса Convert. Например, ToInt32 выполняет перевод в int; ToDouble выполняет перевод в double; ToString выполняет перевод в string. Какие методы имеются в классе Convert, можно узнать очень легко: достаточно набрать это слово, поставить точку и на экране появится весь перечень его методов.

Рассмотрим простейший пример: вводим два числа и выполняем простейшие вычисления:

namespace ConsApp

{

class Program

{

static void Main(string[] args)

{

int i;

double x,y,z;

string s;

Console.Write("i="); //подсказка при вводе

s = Console.ReadLine(); //ввод строки

i = Convert.ToInt32(s); //преобразование

//строки в целое

Console.Write("x=");

x = Convert.ToDouble(Console.ReadLine());

//ввод, совмещенный с преобразованием

y = i * x;

z = 2 * i - x;

Console.WriteLine("y=" + y);

//вывод с автоматическим преобразованием

Console.WriteLine(Convert.ToString(z));

//вывод с явным преобразованием

Console.ReadLine();

} } }

Если аргумент метода WriteLine содержит символьную строку и число, то выполняется автоматическое преобразование. Достаточно писать даже пустую строку, например, ””+y. На внешний вид выводимых данных можно влиять форматами. Проиллюстрируем это следующим примером на обработку данных типа decimal.

namespace Console5

{

class Class1

{

static void Main(string[] args)

{

decimal d1,d2,d3;

string s;

s=Console.ReadLine();

d1=Convert.ToDecimal(s);

d2=4.5m; //m или M признак константы decimal

d3=d1*d2;

Console.WriteLine("Answer is :{0:###.##}",d3);

Console.ReadLine();

} } }

Формат {0 : ###.##} : запись формата состоит из номера аргумента и собственно формата.