
- •Язык c# и структура простой программы
- •Что такое .Net Framework
- •Что такое с#
- •Создание первой программы на с#
- •Пространство имен System
- •С# как язык Объектно-Ориентированного Программирования (ооп)
- •Состав и назначение файлов проекта
- •Структура сборки
- •Элементы языка c#
- •Базовый синтаксис с#
- •Переменные
- •Числа без знака
- •Числа со знаком
- •Числа для финансистов
- •Текстовые символы
- •Логический тип данных
- •Литералы с плавающей точкой
- •Символьные литералы
- •Строковые литералы
- •Выражения и операторы с#
- •Инициализация переменных и оператор присваивания
- •Значение в левой части
- •Ввод данных с консоли
- •Математические операторы
- •Вычисление остатка при целочисленном делении
- •Унарные операторы
- •Унарное логическое отрицание
- •Составные операторы
- •Поразрядные операторы
- •Поразрядное логическое и
- •Поразрядное логическое или
- •Поразрядное логическое исключающее или
- •Унарная поразрядная операция дополнения
- •Поразрядный сдвиг
- •Пример использования поразрядных операторов
- •Логические операторы
- •Операторы отношения
- •Приоритеты операторов
- •Исполнители алгоритмов
- •Исполнитель Чертежник
- •Исполнитель Робот
- •Компьютер как формальный исполнитель алгоритмов
- •Блок-схема
- •Псевдокод
- •Необходимые свойства алгоритма
- •Понятие о временной сложности алгоритма
- •Примеры
- •Правила для определения сложности
- •Тернарный условный оператор
- •Применение логических операций
- •Конструкция выбора
- •Примеры применения оператора выбора
- •Объединение меток case
- •Пропущенный break
- •Пример программы: Простые числа
- •Пример обработки одномерного массива чисел
- •Использование генератора случайных данных
- •Использование оператора foreach
- •Типы задач обработки одномерных числовых массивов
- •Поиск элемента в массиве
- •Многомерные массивы
- •Базовые операции со строками
- •Методы типа string
- •Копирование и клонирование строк
- •Конкатенация строк
- •Извлечение подстроки
- •Вставка подстроки
- •Замена символов и строк
- •Удаление символов из строки
- •Удаление незначащих пробелов
- •Преобразование к верхнему и нижнему регистру
- •Выравнивание по левому и правому краю поля
- •Объединение массива строк
- •Разбор строки
- •Сравнение строк
- •Форматирование текстовых строк
- •Функции
- •Описание и использование функций
- •Возвращаемые значения
- •Передача параметров
- •Выходные параметры
- •Область действия переменных
- •Область действия переменных и управляющие конструкции
- •Рекурсия
- •Параметры функции Main()
- •Перегрузка функций
- •Перечислимый тип
- •Определение перечислимых типов
- •Структуры
- •Описание структур
- •Использование структур в качестве параметров функций
- •Использование структур в качестве возвращаемых значений функций
- •Функции структур
- •Файлы и потоки
- •Основные классы ввода и вывода
- •Классы для работы с потоками
- •Классы для работы с потоками текстовых символов
- •Работа с текстовыми файлами
Преобразование к верхнему и нижнему регистру
Для преобразования всех символов строки к верхнему или нижнему регистру вы можете использовать методы ToUpper и ToLower соответственно.
Работа с этими методами демонстрируется в программе, представленной ниже:
using System;
namespace ToLowerToUpper
{
class Program
{
static void Main(string[] args)
{
string str = "Однажды, в студеную зимнюю пору...";
string resl = str.ToLower();
string res2 = str.ToUpper();
Console.WriteLine(resl);
Console.WriteLine(res2);
Console.ReadLine();
}
}
}
Если запустить эту программу на выполнение, то на экране консоли появятся две строки, первая из которых состоит из букв нижнего регистра, а вторая — из букв верхнего регистра:
однажды, в студеную зимнюю пору...
ОДНАЖДЫ, В СТУДЕНУЮ ЗИМНЮЮ ПОРУ...
Так как в языке С# текстовые символы хранятся в универсальной кодировке UNICODE, преобразование регистра будет выполняться правильно не только для латинских символов, но и для символов других алфавитов.
Выравнивание по левому и правому краю поля
При форматном выводе текста иногда требуется выровнять текстовую строку по левому или правому краю поля заданной ширины. Это можно сделать при помощи методов PadLeft и PadRight соответственно.
В качестве первого параметра этим методам передается ширина поля (в символах), внутри которого необходимо выполнить выравнивание, а в качестве второго — символ-заполнитель (например, пробел),
Применение этих методов демонстрируется в программе, исходный текст которой представлен ниже:
using System;
namespace Padding
{
class Program
{
static void Main(string[] args)
{
string str = "Однажды, в студеную зимнюю пору...";
string resl = str.PadLeft(80, '_' ) ;
string res2 = str.PadRight(80, '_' ) ;
Console.WriteLine(resl) ;
Console.WriteLine(res2) ;
Console.ReadLine();
}
}
}
В качестве символа заполнителя использован символ подчеркивания. Вот что данная программа выведет на консоль после запуска:
Объединение массива строк
Для объединения строк, хранящихся в массиве, удобно использовать метод String.Join. В качестве первого параметра этому методу передается символ-разделитель, который будет добавлен после вставки каждой строки массива. Через второй параметр передается ссылка на объединяемый массив строк.
Третий и четвертый параметры необязательные. Они задают соответственно индекс первого элемента массива, с которого должно начинаться объединение, и количество объединяемых элементов. Если эти параметры не заданы, объединяется весь массив.
Пример использования этого метода вы найдете в программе, исходный текст которой представлен ниже:
using System;
namespace Join
{
class Program
{
static void Main(string[] args)
{
string[] array =
{
"Это", "массив", "строк"
};
string res = String.Join(" ", array, 0, 3);
Console.WriteLine(res);
Console.ReadLine();
}
}
}
Массив строк определяется в этой программе с помощью задания списка литералов:
string[] array =
{
"Это", "массив", "строк"
};
В качестве символа-заполнителя используется пробел:
string res = String.Join(" ", array, 0, 3);
Хотя в данном примере объединяются все строки массива array, для примера использованы необязательные параметры метода String.Join, определяющие первую ячейку массива и количество объединяемых ячеек.