- •Уровни языков программирования
- •Язык c#
- •Переменные и константы
- •Числа без знака
- •Числа со знаком
- •Числа с плавающей точкой
- •Текстовые символы
- •Логический тип данных
- •Выражения и операторы с#
- •Составные операторы
- •Поразрядные операторы
- •Логические операторы
- •Операторы отношения
- •Приоритеты операторов
- •Работа с консолью
- •Преобразование типов
- •Оператор явного преобразования типов
- •Преобразование типов констант
- •Алгоритмизация и решение задач Понятие алгоритма
- •Словесное описание
- •Блок-схема
- •Описание Блоков
- •Псевдокод
- •Реализация алгоритмических конструкций в с# Следование
- •Ветвление
- •Ветвление и условный оператор
- •Вложенные условия
- •Применение логических операций
- •Цикл Пока
- •Цикл Делать-Пока
- •Цикл с параметром
- •Прерывание и возобновление цикла
- •Оператор goto
- •Особые виды циклов
- •Сложные типы данных – массивы чисел и символов Одномерные массивы
- •Использование оператора foreach
- •Типы задач обработки одномерных числовых массивов
- •Многомерные массивы
- •Типы задач обработки двумерных числовых массивов
- •Невыровненные (ступенчатые) массивы
- •Обработка массива символов
- •Работа с текстовыми строками
- •Базовые операции со строками
- •Методы типа string
- •Форматирование текстовых строк
- •Функции
- •Описание и использование функций
- •Возвращаемые значения
- •Передача параметров
- •Массивы параметров
- •Передача параметров по ссылке и по значению
- •Выходные параметры
- •Область действия переменных
- •Глобальные переменные
- •Область действия переменных и управляющие конструкции
- •Рекурсия
- •Структуры
- •Работа с текстовыми файлами
- •Работа с двоичными файлами
Форматирование текстовых строк
Одна из важных задач, которую приходится решать программисту при разработке приложений любого типа, — форматирование текстовых строк. С помощью текстовых строк представляется не только символьная, но и числовая информация, такая, как номера заказов, количество каких-либо предметов, цены, дата, время и т. д.
Что касается С#, то сам по себе этот язык не содержит средств форматирования строк. Однако богатейшие возможности такого форматирования предоставляются программисту в рамках библиотеки классов Microsoft .NET Framework. Первые шаги в изучении средств форматирования обычно связаны с использованием метода Console.WriteLine, например, при выводе в консольное окно шестнадцатеричных чисел.
Аналогичное форматирование доступно при формировании текстовых строк методом String.Format, не имеющим никакого отношения к консольному выводу. Это часто необходимо для разработки программ с оконным пользовательским интерфейсом, т.к. там, как правило, необходимо перед выводом преобразовывать числовые значения в текстовые строки. Эта задача и решается при помощи метода String.Format. Полное и детальное рассмотрение возможностей форматирования различных типов данных выходит за рамки данного курса, но основные приемы и методы форматирования чисел достаточно просто могут быть продемонстрированы на примере целых чисел.
Чтобы преобразовать целочисленное значение в текстовую строку с форматированием при помощи метода String.Format, необходимо задать этому методу так называемую строку формата (format string), а также передать в качестве параметров одно или несколько преобразуемых значений. В ответ данный метод возвратит отформатированную строку.
Строка формата задается методу String.Format в следующем виде:
{N[,М][:formatString]}
Здесь число N задает номер преобразуемого аргумента, передаваемого методу String.Format в качестве параметра. Необязательное число М задает ширину области текстовой строки (в символах), внутри которой необходимо поместить цифры преобразуемого значения. Если это число отрицательное, цифры числа выравниваются по левой границе данной области, а если положительное — по правой границе области.
И, наконец, строка formatString задает коды форматирования, которые существуют для каждого типа данных. Для форматирования целых чисел используются эквивалентные коды форматирования d и D, для вывода в шестнадцатеричной кодировке – коды х и Х.
Рассмотрим программу, исходный текст которой представлен ниже. Эта программа демонстрирует применение различных способов форматирования для представления целых чисел в виде текстовых строк.
using System;
namespace StringFormat
{
class Program
{
static void Main(string[] args)
{
int iSignedNumber = 777;
string result;
result = String.Format("{0}", iSignedNumber);
Console.WriteLine(result);
result = String.Format("{0:x}", 0x23fabc);
Console.WriteLine(result);
result = String.Format("{0:X}", 0x23fabc);
Console.WriteLine(result);
result = String.Format("{0:d2}", iSignedNumber);
Console.WriteLine(result);
result = String.Format("{0:d8}", iSignedNumber);
Console.WriteLine(result);
result = String.Format("{0,5:d}", iSignedNumber);
Console.WriteLine(result);
result = String.Format("{0,-5:d}Этo счастливое число",
iSignedNumber);
Console.WriteLine(result);
Console.ReadLine();
}
}
}
Результат работы этой программы:
