Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Зачёт С#.docx
Скачиваний:
17
Добавлен:
10.12.2018
Размер:
100.55 Кб
Скачать

Операторы

  1. Формат: Один оператор может занимать одну или более строк. Два или большее количество операторов могут быть расположены на одной строке.

  2. Вложенность: Операторы, управляющие порядком выполнения (if , if-else, switch, while, do-while, for) могут быть вложены друг в друга.

  3. Метка оператора: Метка может стоять перед любым оператором, чтобы на этот оператор можно было перейти с пом. оператора goto. Метка состоит из идентификатора, за кот. стоит двоеточие (:). Областью определения метки явл. данная ф-ции. Пример: ABC2: x=3;

  4. Составной оператор: (блок) сост. из одного или большего числа операторов любого типа, заключ. в фигурные скобки ({}). После закрывающей фигурной скобки не должно быть точки с запятой (;).

  5. Оператор-выражение: Любое выражение, заканчивающееся точкой с запятой (;), является оператором.

Пустой оператор: Состоит из точки с запятой (;). Используется для обозначения пустого тела управляющего оператора.

  1. Оператор завершения break:

break;

Прекращает выполнение ближайшего вложенного внешнего оператора switch, while,do или for.

Управление передается оператору, следующему за заканчиваемым. Одно из назначений этого оператора- закончить выполнение цикла при присваивании некоторой переменной определенного значения.

  1. Оператор возврата return:

return;

Прекращает выполнение текущей функции и возвращает управление вызвавшей программе.

return выражение;Прекращает выполнение текущей функции и возвращает управление вызвавшей программе с передачей ей значения выражения.

Условный оператор if-else:if(логическое выражение) <оператор>;

Если выражение истинно, то выполняется <оператор>.Если выражение ложно, то ничего не делается.if (выражение) <оператор1>else<оператор2>;

  1. Оператор-переключатель или оператор выбора switch:

switch (выражение) { case константа1 : <операторы;>break;

case константа2 : <операторы;>break;

default: <операторы;>break; }

Селекторное выражение может принимать не только числовое значение, а и строковое.

  1. Оператор цикла while:while (логическое выражение) { <операторы;> }

13, Оператор цикла dowhile:Do<оператор>while (логическое выражение);

  1. Оператор цикла for:for (выражение1; выражение2; выражение3) { <операторы;> }

  2. Примечание: Оператор «Запятая».Позволяет объединить два выражения в одно там, где синтаксис С# допускает только одно выражение.

9.Массивы в с#. Одномерные массивы.

В отличие от других языков программирования массивы в С# реализованы как объекты. Тип массив определён в системном типе System. Array. Массив – это набор элементов данных одного типа, сохранённых в непрерывной области памяти. Массив содержит список ссылок на ячейки памяти, в которых сохранены элементы массива. Массив может быть объявлен с указанием любого типа данных.

Типы массивов. В зависимости от числа данных измерений массивы делятся на:

  • одномерные;

  • многомерные (самый простой из них – двумерный);

  • ступенчатые (ломаные, изрезанные).

В С# размер массива не нужно указывать при его объявлении. Этим достигается большая гибкость, так как размер определяется в тот момент, когда массив будет использоваться.

Объявление одномерного массива:

Тип_элементов [ ] Имя_массива = new Тип_элементов [размер];

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

Пример создания массива:

int [ ] mas1 = new int [15];

Так как массивы представляют собой ссылки, для создания объекта массива типа int обязательно ключевое слово new.

Можно сначала объявить массив, а затем выделить ему память:

short [] mas2;

// программный код

mas2=new short [n]; //n (размер) должен быть уже установлен

Способы задания значений элементам массива

Способ №1. Инициализация элементов массива константами в момент его создания

а) Без использования оператора new (сокращенный метод инициализации массива):

string [] mas3={“Ольга”, “Дмитрий”, “Анна”, “Петр”};

б) Инициализация элементов массива с использованием оператора new:

int [] mas4=new int {-81,13,79,-110};

В этом случае имеет место некоторая избыточность. Полезно применять, когда уже объявлен массив, а ссылочной переменной позже присваивается ссылка на его первый элемент (отложенная инициализация):

double [] mas5;

// программный код

mas5=new double [] {-5.14, 78.1, 100.56};

в) Указание размера массива при его инициализации:

decimal [] mas6=new decimal [5] {10, 10000, 100000, 1000000};

В этом случае размер массива должен соответствовать количеству инициализаторов.

Способ №2. Ввод элементов массива с клавиатуры

Для управления циклом при работе с массивом можно воспользоваться свойством Length класса System.Array, которое возвращает текущий размер массива.

class UseАrray

{

static void Main()

{

int i,n;

Console. WriteLine(“Введите размер массива”) ;

n = Int32. Parse(Console.ReadLine());

int [ ] mas = new int [n];

for (i = 0; i < mas. Length; i + +)

{

Console. WriteLine(“Enter mas [” + i + “]”);

mas [i] = Int32.Parse(Console.ReadLine());

}

Console. WriteLine(“Содержимое массива:”);

for (i = 0; i < n; i + +)

{

Console. Write(“{0:#.#}”,mas[i]);

}

Console. WriteLine();

}

}

Выход за границы массива проверяется. Может генерироваться исключение IndexOut of Range Exception.

Способ №3. Генерация элементов массива случайным образом

Иногда в приложениях требуется генерировать случайные числа. Для этого используется класс System.Random. В отличие от класса Math, где математические функции реализованы в виде статических методов, которые не требуют для их вызова создания экземпляра класса, методы класса Random – это обычные методы. Значит, для вызова методов генерации случайных чисел необходимо создать экземпляр класса Random:

Random Ob=new Random();

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

1) public int Next() – возвращает целое положительное число во всем положительном диапазоне типа int;

2) public int Next(int max) – возвращает целое положительное число в диапазоне [0, max];

3) public int Next(int min, int max) – возвращает целое положительное число в диапазоне [min, max];

4) public double NextDouble() – возвращает целое действительное число в диапазоне [0,1].

Пример:

double [] mas = new double [n];

for (int i = 0; i < mas. Length; i + +)

mas[i]=Ob.Next(10,50) + Ob.NextDouble();

Альтернативный способ доступа к элементам массива – цикл foreach

Пример использования foreach для вывода элементов массива:

Console. WriteLine(“Содержимое массива:”);

foreach(double z in mas)

Console. WriteLine(“Это число {0:#.##}”, z);