|
|||||||||
|
|||||||||
|
|
Специальные ресурсы/Информатика и информационные технологии/Основные понятия и языки программирования
Керниган, Ричи. Язык C
Эта книга предназначена для того, чтобы помочь читателю научиться программировать
на языке "C". Она содержит учебное введение, цель которого - позволить новым пользователям
начать программировать как можно быстрее, отдельные главы по всем основным особенностям
языка и справочное руководство. Обучение построено в основном на чтении, написании
и разборе примеров, а не голой формулировке правил. Примеры, приводимые в книге,
по большей части являются законченными реальными программами, а не отдельными фрагментами.
Все примеры были проверены непосредственно с текста книги, где они напечатаны в виде,
пригодном для ввода в машину. Кроме указаний о том, как сделать использование языка
более эффективным, мы также пытались, где это возможно, проиллюстрировать полезные
алгоритмы и принципы хорошего стиля и разумной разработки.
С/С++. Программирование на языке высокого уровня.
Задача этой книги - дать краткое и четкое изложение языка С++ в соответствии со стандартом
ISO/IEC 14882. Она предназначена для студентов, изучающих язык "с нуля", но будет
полезна и более искушенным в программировании. Цель, которая ставилась при написании
книги - дать правильное представление о возможностях языка С++ и способах их применения,
толчок к дальнейшему изучению этого и других языков программирования и ключ к пониманию
современных объектно-ориентированных технологий.
Контрольные задания по ключевым темам представлены в 20 вариантах, и автор надеется,
что преподаватели оценят проявленную о них заботу.
Абстракция данных и решение задач на С++. Стены и зеркала, 3-е издание.
Книга представляет собой классический учебник для высшей школы, содержащий глубокое
изложение вопросов, связанных с абстракцией и структурами данных, а также их реализацией
на языке С++. Помимо предоставления прочных основ методов абстракции данных, в ней
особо подчеркивается различие между спецификацией и реализацией, что является принципиально
важным в объектно-ориентированном подходе. В книге подробно обсуждаются ключевые
понятия объектно-ориентированного программирования, включая инкапсуляцию, наследование
и полиморфизм, однако в центре внимания всегда находится именно абстракция данных,
а не синтаксические конструкции языка С++.
Книга будет полезна всем, кто заинтересован в глубоком изучении важнейших аспектов
ООП и полном освоении соответствующих возможностей языка С++.
Оглавление
Предисловие................................................................................13
ЧАСТЬ 1. МЕТОДЫ РЕШЕНИЯ ЗАДАЧ..............................................................23
Глава 1. Принципы программирования и разработки программного обеспечения...................24
Глава 2. Рекурсия: зеркала.................................................................69
Глава 3. Абстракция данных: стены.........................................................123
Глава 4. Связанные списки.................................................................169
Глава 5. Рекурсивный метод решения задач..................................................236
ЧАСТЬ 2. РЕШЕНИЕ ЗАДАЧ С ПОМОЩЬЮ АБСТРАКТНЫХ ТИПОВ ДАННЫХ.................................267
Глава 6. Стеки............................................................................268
Глава 7. Очереди..........................................................................319
Глава 8. Особенности языка С++............................................................358
Глава 9. Эффективность алгоритмов и сортировка............................................408
Глава 10. Деревья.........................................................................455
Глава 11. Таблицы и очереди с приоритетами................................................535
Глава 12. Эффективные реализации таблиц...................................................579
Глава 13. Графы...........................................................................645
Глава 14. Методы работы с внешними запоминающими устройствами.............................681
Приложение А. Основы языка С++............................................................719
Приложение Б. ASCII-коды символов.........................................................788
Приложение В. Заголовочные файлы и стандартные функции в языке С++........................790
Приложение Г. Метод математической индукции...............................................795
Приложение Д. Стандартные шаблонные классы................................................800
Приложение Е. Операторы языка С++.........................................................803
Словарь терминов..........................................................................806
Ответы на вопросы для самопроверки........................................................825
Предметный указатель......................................................................844
Осваиваем С
Очень небольшое руководство по языку программирования C.
Генерация высококачественного кода для программ, написанных на СИ
Хотя все компиляторы с языка Си предназначены для генерации наиболее быстрых и компактных
программ, качество оптимизации кода у них может быть совершенно различное.
История языка C/C++. Пример использования
Благодаря чему сложился такой статус языка С? Исторически этот язык неотделим от
операционной системы Unix, которая в наши дни переживает свое второе рождение. 60-е
годы были эпохой становления операционных систем и языков программирования высокого
уровня. В тот период для каждого типа компьютеров независимо разрабатывались ОС и
компиляторы, а нередко даже свои языки программирования (вспомним, например, PL/I).
В то же время, общность возникающих при этом проблем уже стала очевидной. Ответом
на осознание этой общности стала попытка создать универсальную мобильную операционную
систему, а для этого понадобился не менее универсальный и мобильный язык программирования.
Таким языком стал С, а Unix стала первой ОС, практически полностью написанной на
языке высокого уровня....
@C++ и Java: совместное использование
Язык JAVA во многом произошел от С/С++, у которых были позаимствованы синтаксис и
базовая семантика. Однако связь между ними не ограничивается только этим. Используя
JNI (JAVA NATIVE INTERFACE), можно вызывать С/С++-функции из JAVA-программы и, наоборот,
из программы, написанной на С/С++, можно создавать JAVA-объекты и вызывать JAVA-методы.
Несмотря на то, что использование JNI в большинстве случаев ведет к потере многоплатформенности
JAVA-кода, данная возможность расширяет сферу применения самого языка JAVA на приложения,
для которых это условие не является необходимым. В таких системах использование JNI
позволяет сочетать современный объектно-ориентированный подход JAVA - главное преимущество
этой технологии, с существующим (LEGACY) системно-зависимым (PLATFORM SPECIFIC) кодом
на С/С++. Это является важным и необходимым условием перехода к использованию JAVA-технологии
при разработке компонентов сервера.
Язык программирования Си.
Описан универсальный язык программирования Си. Приве-
дены структура и синтаксис языка, правила написания прог-
рамм, даны начальные сведения о взаимодействии программ на
Си с операционной системой Демос
C++BUILDER: ПЕРВЫЕ ОПЫТЫ
C++Builder предназначен для быстрой разработки приложений (RAD), построенных на современном
фундаменте объектно-ориентированного программирования (ООП). C++Builder сам постепенно
будет помогать вам овладевать премудростями RAD, ООП и языка C++, поначалу требуя
лишь минимальных предварительных знаний. Ваши навыки будут расширяться по мере роста
сложности ваших разработок: чем сложнее задача, тем больший по объему код потребуется
написать для ее реализации. Получение знаний перестает быть самоцелью. Вы сами убедитесь
в том, что C++Builder в корне меняет процесс разработки насколько легче и быстрее
вы сможете получать работающие и надежные программы для операционных систем Windows,
чем при использовании традиционных интерфейсных оболочек других систем.
Стандартные библиотеки. Общее описание.
Очевидным требованием к операционной среде, поддерживающей мобильное прикладное программирование, является то, что все функции, предоставляемые ею прикладной программе, должны быть четко специфицированы и должны точно соответствовать этим спецификациям в любой реализации операционной среды. В UNIX-ориентированных средах это требование удовлетворяется за счет наличия нескольких стандартизованных библиотек функций и соответствующих наборов файлов заголовков (header-файлов).
Особенности мобильного программирования на языке Си
Особая роль языка программирования Си состоит в том, что он, с одной стороны, позволяет писать для UNIX-систем практически столь же эффективный код, что и языки ассемблера, а с другой, является основным средством переноса программ между UNIX-системами. Можно сказать, что Си является машинно-независимым языком ассемблера для UNIX-систем.Однако, если говорить о переносимости программ между компьютерами с разной архитектурой, имея в виду использование языка Си (не слишком высокого уровня), то нужно учитывать ряд требований, которым должна удовлетворять программа.
Программирование на Си в Unix
Подробное описание основных функций. Особо отметим наличие примеров (в количестве 30ти штук) программирования на Си.
ПРОГРАММИРОВАНИЕ НА ЯЗЫКЕ СИ
Утверждено ученым советом университета в качестве учебного пособия
Тамбов, 1994
УДК 519.682.2
ББК з973-018.2(Си)я73
Громов Ю.Ю.,Татаренко С.И. Программирование на языке СИ: Учебное пособие. -Тамбов,1995.- 169 с.
В пособии приведено подробное описание наиболее распространенного языка программирования СИ для персональных компьютеров, совместимых с IBM PC, и описано применение средств языка на примерах задач работы со списками.
Учебное пособие предназначено для студентов всех специальностей, аспирантов и инженерно-технических работников использующих вычислительную технику. Может быть использовано как справочное пособие для широкого круга программистов, как профессионалов, имеющих большой опыт работы на СИ, так и начинающих программировать на СИ.
Ил. 33, табл. 8, библиография назв.
Утверждено ученым советом университета
Рецензенты: д.ф-м.н., проф. Афанасьев А.П.
Язык программирования С для начинающих.
Подготовка программ на Си. ОСНОВНЫЕ ПОНЯТИЯ И ОСОБЕННОСТИ ЯЗЫКА. ОСНОВНЫЕ УПРАВЛЯЮЩИЕ СТРУКТУРЫ. И многое другое из того, что Вы хотели знать о языке Си, но боялись спросить.
Методы сортировки и поиска
В этой книге содержатся фундаментальные материалы, связанные с организацией, сортировкой и поиском данных в основной и внешней памяти. Соответствующие знания необходимы программистам всех уровней (от разработчиков простых прикладных программ до создателей сложнейших систем), квалифицированным пользователям программных продуктов, которые хотят хорошо понимать суть происходящего и, конечно, преподавателям разнообразных компьютерных дисциплин и их студентам.
Методы сортировки и поиска (Часть первая)
В этой книге содержатся фундаментальные материалы, связанные с организацией, сортировкой и поиском данных в основной и внешней памяти. Соответствующие знания необходимы программистам всех уровней (от разработчиков простых прикладных программ до создателей сложнейших систем), квалифицированным пользователям программных продуктов, которые хотят хорошо понимать суть происходящего и, конечно, преподавателям разнообразных компьютерных дисциплин и их студентам.
Методы сортировки и поиска (Часть первая)
В этой книге содержатся фундаментальные материалы, связанные с организацией, сортировкой и поиском данных в основной и внешней памяти. Соответствующие знания необходимы программистам всех уровней (от разработчиков простых прикладных программ до создателей сложнейших систем), квалифицированным пользователям программных продуктов, которые хотят хорошо понимать суть происходящего и, конечно, преподавателям разнообразных компьютерных дисциплин и их студентам.
Объектно-ориентированные технологии проектирования прикладных программных систем
Основные понятия объектно-ориентированного подхода. Объектно-ориентированная разработка программ. Объектно-ориентированные языки программирования...
Структура множественного выбора.
Сегодня мы рассмотрим управляющую структуру: структуру множественного выбора. Оператор структуры множественного выбора называется switch. Такая структура тоже в конечном итоге структура ветвления, но если if – это разделение пути надвое («да»- мы идем в одну сторону, «нет»- в другую), то switch – это разветвление на большее число вариантов, нежели 2. Ивана- царевича вспомнили? Налево пойдешь- по голове получишь, но жив останешься, направо пойдешь- коня потеряешь, ну а если прямо пойдешь… сами помните. Собственно это типичный вариант структуры множественного выбора.
Структура выбора (оператор if)
Описание алгоритма обработки событий с помощью структуры выбора. В данном случае рассматривается действие оператора if.
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Copyright © 2003 «Инженерное образование» E-mail: techno@bmstu.ru | тел.: +7 (095) 263-68-63 |
|