Читать «C# для начинающих» — Никита Борисович Культин онлайн
Страница 1 из 4
Н. Б. Культин
C# для начинающих
самоучитель с примерами и
задачами для самостоятельного
решения
2
Книга представляет собой самоучитель по программированию на языке
C# в Microsoft Visual C# для начинающих. Рассмотрен процесс создания
консольного приложения от кодирования до отладки и тестирования.
Дано описание типов, инструкций языка программирования, структур
данных. Рассмотрены задачи работы с массивами, списками, файлами. В
объеме, необходимом начинающему программисту, рассмотрены основы
объектно-ориентированного программирования: задачи объявления
класса, создания и использования объектов; показаны возможности
технологии LINQ для работы с массивами, списками, XML документами.
Для начинающих программистов.
Copyright © 2024, Культин Н.Б.
3
Оглавление
О КНИГЕ .................................................................................................................. 6
ДЛЯ КОГО ПРЕДНАЗНАЧЕНА ЭТА КНИГА? ........................................................................... 6
ЧТО НЕОБХОДИМО ЗНАТЬ И ИМЕТЬ? ................................................................................ 6
ВВЕДЕНИЕ В ПРОГРАММИРОВАНИЕ ...................................................................... 7
ЯЗЫК ПРОГРАММИРОВАНИЯ С# ...................................................................................... 7
КАК НАУЧИТЬСЯ ПРОГРАММИРОВАТЬ НА С# ...................................................................... 7
ПРОГРАММА ................................................................................................................ 7
КОМПИЛЯЦИЯ И ИНТЕРПРЕТАЦИЯ .................................................................................... 8
КОНСОЛЬНОЕ ПРИЛОЖЕНИЕ ........................................................................................... 8
ЭТАПЫ РАЗРАБОТКИ ПРОГРАММЫ ................................................................................. 10
Определение требований к программе ......................................................... 10
Разработка алгоритма ................................................................................... 10
Кодирование ...................................................................................................... 10
Отладка ............................................................................................................. 11
Тестирование .................................................................................................... 11
АЛГОРИТМ ................................................................................................................. 11
ГЛАВА 1. ПЕРВАЯ ПРОГРАММА ........................................................................... 13
НАЧАЛО РАБОТЫ ......................................................................................................... 13
СТРУКТУРА ПРОГРАММЫ .............................................................................................. 15
ТЕКСТ ПРОГРАММЫ ..................................................................................................... 19
НАБОР ПРОГРАММЫ .................................................................................................... 19
КОМПИЛЯЦИЯ ............................................................................................................ 20
ОШИБКИ .................................................................................................................... 22
ЗАПУСК ПРОГРАММЫ ................................................................................................... 23
ИСКЛЮЧЕНИЯ ............................................................................................................. 24
ЗАВЕРШЕНИЕ РАБОТЫ .................................................................................................. 26
ИЗМЕНЕНИЕ ПРОГРАММЫ ............................................................................................ 26
ГЛАВА 2. ТИПЫ ДАННЫХ, ПЕРЕМЕННАЯ, ИНСТРУКЦИЯ ПРИСВАИВАНИЯ ......... 27
ПЕРЕМЕННАЯ .............................................................................................................. 27
ОСНОВНЫЕ ТИПЫ ДАННЫХ ........................................................................................... 27
int ........................................................................................................................ 28
ОБЪЯВЛЕНИЕ ПЕРЕМЕННЫХ .......................................................................................... 29
КОНСТАНТЫ ............................................................................................................... 30
ИНСТРУКЦИЯ ПРИСВАИВАНИЯ ....................................................................................... 31
ТИП ВЫРАЖЕНИЯ И ПРЕОБРАЗОВАНИЕ ТИПОВ .................................................................. 33
ГЛАВА 3. ВЫВОД НА ЭКРАН, ВВОД ДАННЫХ С КЛАВИАТУРЫ ............................ 35
КОНСОЛЬ ................................................................................................................... 35
4
ВЫВОД НА КОНСОЛЬ .................................................................................................... 35
ВВОД С КОНСОЛИ ........................................................................................................ 38
ГЛАВА 4. ВЫБОР ДЕЙСТВИЯ ................................................................................. 41
УСЛОВИЕ.................................................................................................................... 41
ВЫБОР ДЕЙСТВИЯ........................................................................................................ 43
ИНСТРУКЦИЯ IF ........................................................................................................... 43
МНОЖЕСТВЕННЫЙ ВЫБОР ............................................................................................ 47
ИНСТРУКЦИЯ SWITCH ................................................................................................... 49
ГЛАВА 5. ЦИКЛЫ................................................................................................... 53
ИНСТРУКЦИЯ FOR ....................................................................................................... 53
ИНСТРУКЦИЯ WHILE ..................................................................................................... 57
ИНСТРУКЦИЯ DO WHILE ................................................................................................ 59
ГЛАВА 6. ОДНОМЕРНЫЙ МАССИВ ....................................................................... 62
ОБЪЯВЛЕНИЕ МАССИВА ................................................................................................ 62
ДОСТУП К ЭЛЕМЕНТУ МАССИВА ..................................................................................... 63
ИНИЦИАЛИЗАЦИЯ МАССИВА ......................................................................................... 64
ВВОД И ВЫВОД МАССИВА ............................................................................................. 65
СРЕДНЕЕ АРИФМЕТИЧЕСКОЕ .......................................................................................... 67
МИНИМАЛЬНЫЙ ЭЛЕМЕНТ ........................................................................................... 67
СОРТИРОВКА МАССИВА ................................................................................................ 69
Метод выбора .................................................................................................. 69
Метод обменов ................................................................................................ 70
ПОИСК В МАССИВЕ ...................................................................................................... 72
Метод перебора ............................................................................................... 72
Метод половинного деления .......................................................................... 73
ГЛАВА 7. ДВУМЕРНЫЕ МАССИВЫ ........................................................................ 77
ОБЪЯВЛЕНИЕ МАССИВА ................................................................................................ 77
ДОСТУП К ЭЛЕМЕНТУ МАССИВА ..................................................................................... 78
ВВОД И ОБРАБОТКА ..................................................................................................... 78
ГЛАВА 8. ФУНКЦИЯ ПРОГРАММИСТА ................................................................. 83
ФУНКЦИЯ ................................................................................................................... 83
ОБЪЯВЛЕНИЕ ФУНКЦИИ ............................................................................................... 84
ИСПОЛЬЗОВАНИЕ ФУНКЦИИ .......................................................................................... 85
ГЛАВА 9. ЗАПИСИ .................................................................................................. 88
ТИП-ЗАПИСЬ ............................................................................................................... 88
ОБЪЯВЛЕНИЕ ЗАПИСИ .................................................................................................. 89
ДОСТУП К ПОЛЮ ЗАПИСИ ............................................................................................. 90
5
МАССИВ ЗАПИСЕЙ ....................................................................................................... 90
ГЛАВА 10. КЛАСС И ОБЪЕКТ ................................................................................. 92
ОБЪЯВЛЕНИЕ КЛАССА .................................................................................................. 92
ОБЪЯВЛЕНИЕ И СОЗДАНИЕ ОБЪЕКТА .............................................................................. 95
МАССИВ ОБЪЕКТОВ ..................................................................................................... 97
СПИСОК ОБЪЕКТОВ .................................................................................................... 100
ГЛАВА 11. НОВЫЙ КЛАСС НА БАЗЕ СУЩЕСТВУЮЩЕГО ..................................... 103
НАСЛЕДОВАНИЕ ........................................................................................................ 103
ПОЛИМОРФИЗМ ....................................................................................................... 106
ГЛАВА 12. ФАЙЛЫ .............................................................................................. 110
ПОТОК ..................................................................................................................... 110
ЧТЕНИЕ ДАННЫХ ИЗ ФАЙЛА (ПОТОКА) .......................................................................... 110
ЗАПИСЬ ДАННЫХ В ФАЙЛ (ПОТОК) ............................................................................... 113
ГЛАВА 13. LINQ ................................................................................................... 116
ЛЯМБДА-ВЫРАЖЕНИЕ ................................................................................................ 116
Q-ОПЕРАТОР ............................................................................................................ 116
ВЫПОЛНЕНИЕ Q-ОПЕРАТОРА ...................................................................................... 118
ОПЕРАЦИИ С МАССИВАМИ.......................................................................................... 119
Выбор элементов (поиск) .............................................................................. 119
СПИСОК ОБЪЕКТОВ .................................................................................................... 120
РАБОТА С XML-ДОКУМЕНТАМИ .................................................................................. 122
Создание XML-документа .............................................................................. 123
Чтение XML-файла ......................................................................................... 125
Выбор информации из XML-файла ................................................................ 127
ЗАКЛЮЧЕНИЕ ...................................................................................................... 130
6
О книге
Для кого предназначена эта книга?
Эта книга предназначена для тех, кто хочет научиться программировать на
языке С#. Если вы новичок в программировании, то она адресована именно вам.
Здесь вы найдете все, что должен знать начинающий программист. Узнаете,
какие бывают типы данных, что такое массив, список, функция и как с ними
работать, научитесь использовать циклы и работать с файлами.
Книга является отличным помощником в освоении теории и практики
программирования, содержит множество практических советов и рекомендаций.
Что необходимо знать и иметь?
Чтобы научиться программировать, нужно иметь, прежде всего, желание. Но
одного желания недостаточно. Нужны знания и навыки работы на компьютере
на уровне подготовленного пользователя. Опыт программирования не
требуется.
Для практической работы нужен компьютер с операционной системой Windows
одной из последних версий (лучше Windows 10, но можно и Windows 7 или
Windows 8) и среда разработки Microsoft Visual Studio.
Следует обратить внимание, вы можете использовать любую из доступных вам
версий Microsoft Visual Studio – от Microsoft Visual Studio 2015 до Microsoft
Visual Studio 2022. Я рекомендую установить на компьютер Microsoft Visual
Studio Community, которую можно бесплатно загрузить с официального сайта
Microsoft.
7
Введение в программирование
Язык программирования С#
Объектно-ориентированный язык программирования C# разработан в компании
Microsoft в 1998 —2001 годах группой инженеров под руководством Андерса
Хейлсберга (Anders Hejlsberg ) как средство разработки приложений для
платформы Microsoft .NET Framework.
Синтаксис C# близок к синтаксису языков C++ и Java. Язык C# имеет
статическую типизацию, поддерживает полиморфизм, перегрузку операторов,
делегаты, атрибуты, события, свойства, обобщѐнные типы и методы, итераторы,
анонимные функции с поддержкой замыканий.
Как научиться программировать на С#
Чтобы научиться программировать на том или ином языке, надо на этом языке
программировать. Однако язык С#, вследствие своей объектной
ориентированности а также того, что язык создавался как средство для
профессионалов, являет ся довольно сложным языком. Изучение объектно -
ориентированных возможностей С# предполагает наличие довольно серьезной
подготовки, опыта практического программирования. Так что же делать, не
подступать к С# до тех пор пока не научишься программировать на др угом,
более доступном для новичка языке, например на Паскале? Ответ на этот вопрос
подсказал, Бьярн Страуструп, создатель языка C++. Хотя Бьярн Страуструп
говорит о C++, тем не менее его рецепт применим и к C#:
По моему опыту, наиболее безопасный путь - изучать С++ снизу вверх, то
есть вначале изучить те возможности, которые С++ предлагает для
традиционного процедурного программирования (так называемый "улучшенный
С"), затем научиться использовать и понимать средства абстрагирования
данных, а потом освоить использование классовых иерархий для организации
наборов взаимосвязанных классов.
Программа
Программа, работающая на компьютере, зачастую отождествляется с самим
компьютером, так как пользователь "вводит в компьютер" исходные данные
(при помощи клавиатуры или мыши), а "компьютер выдает результат" на экран,
на принтер или в файл. На самом деле ввод исходных данных, преобразование
исходных данных в результат и вывод результата выполняет процессор.
Процессор делает всю работу в соответствии с определенным алго ритмом,
который будучи записан на специальном языке, называют программой. Таким
образом, чтобы компьютер выполнил некоторую работу, необходимо составить