Учебное пособие предлагает читателю курс программирования, ориентированный на язык Си. Пособие содержит много примеров с часто применяемыми алгоритмами и фундаментальными структурами данных, при этом для некоторых задач приводится несколько способов решения в зависимости от начальных условий с целью повышения эффективности работы программы. Большое внимание уделено алгоритмам сортировок таких объектов, как массивы, матрицы, строки, файлы, списки. Также имеется большое количество задач для отработки основных приемов программирования на языке Си. Целью данного учебного пособия является не только познакомить читателя с языком Си, но и показать тонкости данного языка, а также научить составлять правильные и эффективные программы. Предназначено для преподавателей, магистрантов, студентов физико-математических и информационных специальностей.