- •Введение
- •Контрольная работа № 1 разработка приложений в microsoft visual studio 2008
- •Теоретические сведения Интерфейс Microsoft Visual Studio 2008
- •Создание консольного приложения
- •Построение xml-отчета по выполненному проекту
- •Создание приложения Windows Forms
- •Контрольные вопросы
- •Содержание и порядок выполнения работы
- •Контрольная работа № 2
- •Теоретические сведения Структура программы. Переменные и выражения
- •Литеральные константы
- •Операции и их старшинство
- •Операторы c#
- •If(выражение1) if(выражение2) if(выражение3) ...
- •Контрольные вопросы
- •Содержание и порядок выполнения работы
- •Примеры решения задач
- •Контрольная работа № 3 техника работы с массивами. Процедуры и функции
- •Теоретические сведения
- •Базовый класс для массивов
- •Процедуры и функции
- •Синтаксис методов
- •Формальные и фактические аргументы
- •Соответствие формальных и фактических аргументов
- •Функции с побочным эффектом
- •Функция Main()
- •Контрольные вопросы
- •Содержание и порядок выполнения работы
- •Примеры решения задач
- •Контрольная работа № 4 перечисления и структуры
- •Теоретические сведения
- •Базовый класс перечислений - System.Enum
- •Структуры
- •Контрольные вопросы
- •Содержание и порядок выполнения работы
- •Пример решения задачи
- •Контрольная работа № 5 обработка символов и строк
- •Теоретические сведения
- •Контрольные вопросы
- •Содержание и порядок выполнения работы
- •Примеры решения задачи
- •Контрольная работа № 6 проектирование классов. Составление программ с использованием ооп
- •Теоретические сведения
- •Контрольные вопросы
- •Содержание и порядок выполнения работы
- •Пример решения задачи
- •Заключение
- •Библиографический список
- •Оглавление
- •394026 Воронеж, Московский просп., 14
Базовый класс для массивов
Базовым для всех массивов в С# является класс System.Array. Из-за этого происходят все различия между массивами в С++ и С#.
Некоторые из методов этого класса приведены в табл. 6.
Таблица 6
Член класса |
Назначение |
BinarySearch() |
Этот статический метод можно использовать только тогда, когда массив реализует интерфейс IComparer. Если интерфейс реализован, то этот метод позволяет найти элемент массива |
Clear() |
Этот статический метод позволяет очистить указанный диапазон элементов (числовые элементы приобретут 0, объекты – NULL) |
CopyTo() |
Копирует элементы из исходного массива в массив назначения |
GetEnumerator() |
Возвращает интерфейс IEnumerator для указанного массива |
GetLength() Length |
Метод определяет число элементов в указанном измерении массива. Свойство Length (только для чтения) дает количество элементов массива |
GetLowerBound() |
Определяет нижнюю границу измерения массива |
GetUpperBound() |
Определяет верхнюю границу измерения массива |
GetValue() SetValue() |
Возвращает или устанавливает значение указанного индекса для массива. Перегружены для нормальной работы с одномерными и многомерными массивами |
Reverse() |
Расставляет элементы одномерного массива в обратном порядке |
Sort() |
Сортируется одномерный массив встроенных типов данных. Если элементы массива поддерживают интерфейс ICompare, то метод может сортировать массив из пользовательских типов |
Пример использования членов System.Array:
string [] myName = new string[5]
{
"Ваня",
"Света",
"Петя",
"Людмила",
"Денис"
};
Console.WriteLine("Имена в массиве");
for (int i=0; i<myName.Length; i++)
Console.Write(myName[i]+"\t");
Console.WriteLine();
//Выводим имена в обратном порядке
Array.Reverse(myName);
Console.WriteLine("\nИмена в обратном порядке");
for (int i=0; i<myName.Length; i++)
Console.Write(myName[i]+"\t");
Console.WriteLine();
//Очищаем все имена, кроме последнего
Console.WriteLine("\nОчистили имена, кроме последнего");
Array.Clear(myName,1,4);
for (int i=0; i<myName.Length; i++)
Console.Write(myName[i]+"\t");
Console.WriteLine();
Рис. 17. Демонстрация работы методов Array
Процедуры и функции
В C# функции существуют только как методы некоторого класса, они не существуют вне класса.
Синтаксис объявления метода позволяет однозначно определить, чем является метод - процедурой или функцией.
Функция отличается от процедуры двумя особенностями:
- всегда вычисляет некоторое значение, возвращаемое в качестве результата функции;
- вызывается в выражениях.
Процедура C# имеет свои особенности:
- возвращает формальный результат void, указывающий на отсутствие результата;
- вызов процедуры является оператором языка;
- имеет входные и выходные аргументы, причем выходных аргументов - ее результатов - может быть достаточно много.