Корзина
0
Корзина
0
Добавьте в корзину товаров ещё на 900 гривен, чтобы БЕСПЛАТНО получить товар по Украине до отделения Новой почты.

Ваша корзина пустая

Меню
Купить Язык программирования C++. Лекции и упражнения

Язык программирования C++. Лекции и упражнения

Эта книга первая в новой серии мировых бестселлеров, выпускаемых на русском языке, под общим названием "Лекции и упражнения". В ней вы найдете подробное изложение возможностей языка С, определяемых стандартами ANSI С и K&R С. Многочисленные примеры, приведенные в книге, значительно облегчают усвоение изложенного материала. Работа с книгой поможет вам расширить и углубить свои знания по языку С. Для начинающих книга будет превосходным учебником.

Содержание

Об авторе

Глава 1. Готовимся изучать язык С

Как возник язык С?

Почему был выбран С?

Структурные особенности языка программирования С

Эффективность

Переносимость

Программу на языке С можно взять домой

Мощь и гибкость

Ориентация на программистов

Недостатки

Эволюция языка программирования С

Использование языка С: семь этапов по созданию программы

Этап 1: Определение целей создания программы

Этап 2; Составление проекта программы

Этап 3: Создание программного кода

Этап 4: Компиляция

Этап 5: Выполнение программы

Этап 6: Проверка и отладка программы

Этап 7: Сопровождение и модернизация программы

Комментарии

Технология программирования

Файлы объектного кода, исполняемые файлы и библиотеки

Операционная система UNIX

Операционная система Linux

Компиляторы командной строки для компьютеров IBM PC

Интегрированные среды разработки (DOS)

Интегрированные среды разработки (Windows)

Реализация С для Macintosh

Причины осуществления компиляции

Стандарты языка С

Стандарт ANSI С

Комитет С9Х

Некоторые соглашения

Тип шрифта

Данные, выводимые на экран

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 2. Введение в язык С

Простая программа на языке С

Объяснение

Первый проход: краткий обзор

Второй проход: детали программы

Структура простой программы

Советы: как сделать программы легко читаемыми

Делаем следующий шаг

Документирование

Объявление нескольких переменных

Умножение

Вывод на экран нескольких значений

Программа, включающая несколько функций

Отладка

Синтаксические ошибки

Семантические ошибки

Состояние программы

Ключевые слова

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 3. Представление данных в языке С

Учебная программа

Что нового появилось в этой программе?

Переменные и константы

Ключевые слова, обозначающие типы данных

Целочисленные данные и данные с плавающей точкой

Целые числа

Числа с плавающей точкой

Типы данных языка С

Тип данных int

Другие типы целочисленных данных

Применение символов: тип данных char

Данные типа float и double

Другие типы данных

Размеры данных различных типов

Использование типов данных

Опасности, связанные с использованием аргументов

Еще один пример программы

Что делает эта программа

Возможная проблема

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 4. Строки символов и форматированный ввод/вывод

Вводная программа

Строки символов: введение

Тип массива char и нулевой символ

Использование строк

Функция strlen()

Константы и препроцессор С

Модификатор const

Одновременное использование #define и #include

Язык С - мастер маскировки: создание псевдонимов

Именованные константы в работе

Исследование и использование функций printf() и scanf()

Функция printf()

Использование функции printf()

Модификаторы спецификации преобразования для функции printf()

Значение преобразования

Использование функции scanf()

Модификатор * и его использование с функциями printf () и scant ()

Советы по использованию

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 5. Операции, выражения и оператор

Начальные сведения о циклах

Основные операции

ОпераТОР присваивания: =

Операция сложения: +

Операция вычитания: -

Операции изменения знака: - и +

Операция умножения: *

Операция деления: /

Порядок выполнения операций

Приоритет операций и порядок вычислений

Некоторые дополнительные операции

Операция sizeof

Операция деления по модулю: %

Операции приращения и уменьшения: ++ и -

Операция уменьшения: -

Приоритет операций

Не будьте слишком самоуверенными

Выражения и операторы

Выражения

Операторы

Составные операторы (блоки)

Преобразования типов

Операция приведения

Функции и аргументы

Объявление функций и заголовки в языке K&R C

Пример программы

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 6. Управляющие операторы языка С: циклы

Пример для начала

Комментарии к программе

Цикл считывания в стиле языка С

Оператор while

Прерывание выполнения цикла while

Когда прекращается выполнение цикла

Оператор while: цикл с предусловием

Синтаксические особенности

Использование операций отношений и выражений

Что такое истина?

Что еще может быть истиной?

Осложнения с понятием "истина"

Приоритеты операций отношения

Неопределенные циклы и циклы со счетчиком

Цикл for

Использование цикла for для большей гибкости!

Дополнительные операторы присваивания: +=, -=, *=, /=, %=

Операция запятая

Греческий философ Зенон и цикл for

Цикл с постусловием: do while

Какой цикл следует выбрать?

Вложенные циклы

Обсуждение

Вариации вложенного цикла

Массивы

Использование цикла for при работе с массивами

Пример цикла, использующего возвращение значения функции

Обсуждение программы

Использование функций с возвращаемым значением

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 7. Управляющие операторы языка С: ветвление и безусловные переходы

Оператор if

Основные сведения об операторе if

Добавление else в оператор if

Еще один пример: знакомство с функциями getchar() и putchar()

Семейство символьных функций из файла ctype.h

Многократный выбор: оператор else if

Объединение else и if в пары

Больше вложений операторов if

Давайте будем логичными

Приоритет операций

Порядок вычисления выражений

Диапазоны значений

Программа подсчета слов

Условная операция: ?

Дополнительные средства организации цикла: continue и break

Оператор continue

Оператор break

Множественный выбор: операторы switch и break

Как пользоваться оператором switch

Считывание только первого символа строки

Множественные метки

Операторы switch и конструкция if else

Оператор goto

Избегайте использования оператора goto

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 8. Символьный ввод/вывод и перенаправление

Односимвольные функции ввода/вывода: getchar() и putchar()

Буферы

Прерывание ввода с клавиатуры

Файлы, потоки и ввод с клавиатуры

Конец файла

Перенаправление и файлы

Перенаправление в системах UNIX и DOS

Графический пример

Создание дружественного интерфейса пользователя

Работа с буферизованным вводом

Комбинированный символьно-числовой ввод

Символьные эскизы

Анализ программы

Организация меню

Задачи

Обеспечение бесперебойного выполнения

Комбинированный символьно-числовой ввод

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 9. Функции

Введение

Создание и использование простой функции

Аргументы функции

Определение функции, имеющей аргумент: формальные аргументы

Объявление прототипа функции, имеющей аргументы

Вызов функции, содержащей аргумент: фактические аргументы

Представление в виде черного ящика

Возвращение значения функции с помощью оператора return

Типы функций

Прототипирование функций ANSI С

Проблема

Решение ANSI

Отсутствующие аргументы и неопределенные аргументы

Рекурсия

Рекурсия в действии

Основы рекурсии

Хвостовая рекурсия

Рекурсия и обратный порядок

Все функции языка С равноправны

Компиляция программ, содержащих две и более функции

UNIX

Linux

Компиляторы командной строки DOS

Компиляторы Windows и Macintosh

Использование заголовных файлов

Определение адресов: операция &

Изменение переменных в вызывающей функции

Указатели: первое знакомство

Оператор косвенной адресации: *

Объявление указателей

Использование указателей для обмена данными между функциями

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 10. Массивы и указатели

Массивы

Инициализация и классы памяти

Присвоение значений элементам массива

Указатели на массивы

Функции, массивы и указатели

Массив имен в качестве аргументов

Использование указателей в качестве аргументов

Комментарии: указатели и массивы

Операции с указателями

Защита содержимого массивов

Использования ключевого слова const применительно к формальным параметрам

Дополнительные сведения о ключевом слове const

Многомерные массивы

Инициализация двумерного массива

Дополнительные измерения

Указатели и многомерные массивы

Функции и многомерные массивы

Планирование программы

Общий план

Функция read_array()

Функция show_array()

функция mean()

Результат

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 11. Символьные строки и строковые функции

Определение строк внутри программы

Константы символьных строк

Массивы символьных строк и инициализация

Сравнение представлений в форме массива и указателя

Явное указание размера массива

Массивы символьных строк

Указатели и строки

Ввод строк

Создание области хранения

Функция gets()

Функция fgets()

Функция scanf()

Вывод строк

Функция puts()

Функция fputs()

функция printf()

Возможность создания собственных функций

Строковые функции

Функция strlen()

Функции strcat() и strncat()

Функции strcmp() и stmcmp()

Функции strcpy() и stmcpy()

Функция sprintf()

Прочие строковые функции

Пример обработки строк: сортировка строк

Сортировка

Символьные функции и строки семейства ctype.h

Аргументы командной строки

Аргументы командной строки в интегрированных средах

Аргументы командной строки в среде Macintosh

Преобразования строк в цифры

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 12. Файловый ввод/вывод

Взаимодействие с файлами

Что такое файл?

Уровни ввода/вывода

Стандартные файлы

Стандартный ввод/вывод

Проверка аргументов командной строки

Функция fopen()

Функции getc() и putc()

Функция fclose()

Стандартные файлы

Простая программа сжатия файлов

Файловый ввод/вывод: fprintf(), fscanf(), fgets() и fputs()

Функции fprintf() и fscanf()

Функции fgets() и fputs()

Реализация произвольного доступа: fseek() и ftell()

Как работают функции fseek() и ftell()?

Двоичный и текстовый режимы

Переносимость

Функции fgetpos() и fsetpos()

За кулисами стандартного ввода/вивода

Другие функции стандартного ввода/вывода

Функция int ungetc(int с, FILE *fp)

Функция int fflush(FILE *fp)

Функция int setvbuf(FILE *fp, char *buf, int mode, size_t size)

Двоичный ввод/вывод: функции ofread() и fwrite()

Функция size_t fwrite(void *ptr, size_t size, size_t nmemb, FILE *fp)

Функция size_t fread(void *ptr, size_t size, size_t nmemb, FILE *fp)

Функции int feof(FILE *fp) и int ferror(FILE *fp)

Пример

Произвольный доступ с помощью двоичного ввода/вывода

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 13. Классы памяти разработка программ

Классы памяти и область видимости

Область видимости, связывание и продолжительность хранения

Автоматические переменные

Внешние переменные

Определения и объявления

Статические переменные

Внешние статические переменные

Программы, использующие несколько файлов

Область видимости и функции

Переменные регистра

Какой класс памяти выбрать?

Функция генерации случайных чисел

Игра в кости

Сортировка чисел

Глобальные решения

Чтение числовых данных

Функция getarray()

Сортировка данных

Печать данных

Результаты

Комментарии

Классификаторы типов ANSI С

Классификатор типа const

Классификатор типа volatile

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 14. Структуры и другие формы данных

Задача: создание описи книг

Объявление структуры

Определение переменных структуры

Инициализация структуры

Доступ к элементам структуры

Массивы структур

Объявление массива структур

Идентификация элементов массива структур

Анализ программы

Вложенные структуры

Указатели на структуры

Объявление и инициализация указателя структуры

Доступ к элементам структуры с помощью указателя

Передача функциям информации о структурах

Передача элементов структуры

Использование адреса структуры

Передача структуры в качестве аргумента

Новые возможности структур

Выбор между структурами и указателями на них

Выбор между массивами символов и указателями на символы в структуре

Функции, использующие массив структур

Сохранение содержимого структуры в файле

Анализ программы

Структуры: что дальше?

Краткий обзор соединений

Краткий обзор функции typedef

Эффектные объявления

Функции и указатели

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 15. Дополнительные сведения о битах

Двоичные числа, биты и байты

Двоичные целые числа

Целые числа со знаком

Двоичная система с плавающей точкой

Системы счисления с другими основаниями

Восьмеричная система счисления

Шестнадцатиричная система счисления

Побитовые операции языка С

Побитовые логические операции

Применение: маски

Применение; переключение битов в положение ON

Применение: отключение битов

Применение: переключение битов

Применение: проверка значения бита

Операции побитового смещения

Программный пример

Другой программный пример

Поля битов

Пример поля битов

Поля битов и побитовые операторы

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 16. Препроцессор С и библиотека С

Именованные константы: #define

Символы

Переопределение констант

Использование аргументов для #define

Включение в строку макроаргумента

Макрос или функция?

Включение файлов: #include

Заголовочные файлы: пример

Использование заголовочных файлов

Другие директивы

Директива #undef

Условная компиляция

Перечислимые типы

Константы enum

Значения, принятые по умолчанию

Присвоенные значения

Использование

Библиотека С

Получение доступа к библиотеке С

Использование описаний библиотеки

Библиотека математических функций

Библиотека утилит общего назначения

Функции exit() и atexit()

Распределение памяти: malloc() и free()

Функция саllос()

Классы памяти и динамическое распределение памяти

Функция qsort()

Библиотека для хранения утверждений

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 17. Расширенное представление данных

Исследование представления данных

От массива к связанному списку

Использование связанного списка

Создание списка

Запоздалые соображения

Абстрактные типы данных (ADT)

Получение абстрактного типа

Создание интерфейса

Использование интерфейса

Реализация интерфейса

Реализация очереди с помощью ADT

Реализация интерфейса представления данных

Тестирование очереди

Имитация реальных ситуаций с помощью очереди

Сравнение связанного списка с массивом

Деревья двоичного поиска

ADT двоичного дерева

Интерфейс дерева двоичного поиска

Реализация двоичного дерева

Проверка дерева

Размышления по поводу дерева

Другие направления

Резюме

Контрольные вопросы

Упражнения по программированию

Приложение А. Дополнительная литература

Язык С

Программирование

Ссылки

Приложение В. Операторы и операции в языке С

Арифметические операции

Операции отношений

Выражения отношений

Операторы присваивания

Пример

Логические операции

Логические выражения

Порядок оценки логических выражений

Примеры

Условный оператор

Примеры

Операции, связанные с указателями

Пример

Операции изменения знака

Операции над структурами и объединениями

Операция принадлежности

Пример

Операция косвенной принадлежности (или указатель на структуру)

Пример

Побитовые операции

Примеры

Дополнительные операции

Пример

Приложение С. Основные типы данных и классы памяти

Обзор: основные типы данных

Ключевые слова

Целые числа со знаком

Целые числа без знака

Символы

Числа с плавающей точкой

Резюме: как определить простую переменную

Резюме: описатели

Ключевые слова

Общие замечания

Свойства

Приложение D. Выражения, операторы и контроль выполнения программы

Резюме: выражения и операторы

Выражения

Операторы

Резюме: оператор while

Ключевое слово

Общие замечания

Форма

Примеры

Резюме: оператор for

Ключевое слово

Общие замечания

Форма

Пример

Резюме: оператор do while

Ключевые слова

Общие замечания

Форма

Пример

Резюме: использование оператора if для выбора вариантов

Ключевые слова

Общие замечания

Форма 1

Форма 2

Форма 3

Пример

Резюме: многовариантный выбор с помощью switch

Ключевое слово

Общие замечания

Форма

Примеры

Резюме: переходы в программе

Ключевые слова

Общие замечания

Команда break

Команда continue

Команда goto

Приложение Е. Таблица кодов ASCII

Приложение F. Библиотека С стандарта ANSI

Диагностика: assert.h

Обработка символов: ctype.h

Локализация: locale.h

Математическая библиотека: math.h

Нелокальные переходы: setjmp.h

Обработка сигналов: signal.h

Переменные аргументы: stdarg.h

Стандартная библиотека ввода/вывода: stdio.h 396

Общие утилиты: stdlib.h

Обработка строковых величин: string.h

Дата и время: time.h

Приложение G. Различия между языками С и C++

Объявления

Прототипы функций

Определения функций

Комментарии

Константы char

Модификатор const

Структуры и объединения

Перечисления

Управление типами указателей

Приложение H. Комитет С9Х

Типы

Новые типы

Расширение целых чисел: перносимые типы

Усовершенствованные вычислительные средства поддержки

Заголовочный файл fenv.h

Дополнения к библиотеке math.h

Поддержка комплексных чисел

Ключевое слово restrict

Поддержка расширенных наборов символов

Приложение I. Ответы на контрольные вопросы
Нет в наличии

Язык программирования C++. Лекции и упражнения

Купить Язык программирования C++. Лекции и упражнения
Артикул : 4233
Издательство : Dia Soft
Автор : Прата
Страниц : 0
Год издания : 2001
Нет в наличии

Описание
Эта книга первая в новой серии мировых бестселлеров, выпускаемых на русском языке, под общим названием "Лекции и упражнения". В ней вы найдете подробное изложение возможностей языка С, определяемых стандартами ANSI С и K&R С. Многочисленные примеры, приведенные в книге, значительно облегчают усвоение изложенного материала. Работа с книгой поможет вам расширить и углубить свои знания по языку С. Для начинающих книга будет превосходным учебником.

Содержание

Об авторе

Глава 1. Готовимся изучать язык С

Как возник язык С?

Почему был выбран С?

Структурные особенности языка программирования С

Эффективность

Переносимость

Программу на языке С можно взять домой

Мощь и гибкость

Ориентация на программистов

Недостатки

Эволюция языка программирования С

Использование языка С: семь этапов по созданию программы

Этап 1: Определение целей создания программы

Этап 2; Составление проекта программы

Этап 3: Создание программного кода

Этап 4: Компиляция

Этап 5: Выполнение программы

Этап 6: Проверка и отладка программы

Этап 7: Сопровождение и модернизация программы

Комментарии

Технология программирования

Файлы объектного кода, исполняемые файлы и библиотеки

Операционная система UNIX

Операционная система Linux

Компиляторы командной строки для компьютеров IBM PC

Интегрированные среды разработки (DOS)

Интегрированные среды разработки (Windows)

Реализация С для Macintosh

Причины осуществления компиляции

Стандарты языка С

Стандарт ANSI С

Комитет С9Х

Некоторые соглашения

Тип шрифта

Данные, выводимые на экран

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 2. Введение в язык С

Простая программа на языке С

Объяснение

Первый проход: краткий обзор

Второй проход: детали программы

Структура простой программы

Советы: как сделать программы легко читаемыми

Делаем следующий шаг

Документирование

Объявление нескольких переменных

Умножение

Вывод на экран нескольких значений

Программа, включающая несколько функций

Отладка

Синтаксические ошибки

Семантические ошибки

Состояние программы

Ключевые слова

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 3. Представление данных в языке С

Учебная программа

Что нового появилось в этой программе?

Переменные и константы

Ключевые слова, обозначающие типы данных

Целочисленные данные и данные с плавающей точкой

Целые числа

Числа с плавающей точкой

Типы данных языка С

Тип данных int

Другие типы целочисленных данных

Применение символов: тип данных char

Данные типа float и double

Другие типы данных

Размеры данных различных типов

Использование типов данных

Опасности, связанные с использованием аргументов

Еще один пример программы

Что делает эта программа

Возможная проблема

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 4. Строки символов и форматированный ввод/вывод

Вводная программа

Строки символов: введение

Тип массива char и нулевой символ

Использование строк

Функция strlen()

Константы и препроцессор С

Модификатор const

Одновременное использование #define и #include

Язык С - мастер маскировки: создание псевдонимов

Именованные константы в работе

Исследование и использование функций printf() и scanf()

Функция printf()

Использование функции printf()

Модификаторы спецификации преобразования для функции printf()

Значение преобразования

Использование функции scanf()

Модификатор * и его использование с функциями printf () и scant ()

Советы по использованию

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 5. Операции, выражения и оператор

Начальные сведения о циклах

Основные операции

ОпераТОР присваивания: =

Операция сложения: +

Операция вычитания: -

Операции изменения знака: - и +

Операция умножения: *

Операция деления: /

Порядок выполнения операций

Приоритет операций и порядок вычислений

Некоторые дополнительные операции

Операция sizeof

Операция деления по модулю: %

Операции приращения и уменьшения: ++ и -

Операция уменьшения: -

Приоритет операций

Не будьте слишком самоуверенными

Выражения и операторы

Выражения

Операторы

Составные операторы (блоки)

Преобразования типов

Операция приведения

Функции и аргументы

Объявление функций и заголовки в языке K&R C

Пример программы

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 6. Управляющие операторы языка С: циклы

Пример для начала

Комментарии к программе

Цикл считывания в стиле языка С

Оператор while

Прерывание выполнения цикла while

Когда прекращается выполнение цикла

Оператор while: цикл с предусловием

Синтаксические особенности

Использование операций отношений и выражений

Что такое истина?

Что еще может быть истиной?

Осложнения с понятием "истина"

Приоритеты операций отношения

Неопределенные циклы и циклы со счетчиком

Цикл for

Использование цикла for для большей гибкости!

Дополнительные операторы присваивания: +=, -=, *=, /=, %=

Операция запятая

Греческий философ Зенон и цикл for

Цикл с постусловием: do while

Какой цикл следует выбрать?

Вложенные циклы

Обсуждение

Вариации вложенного цикла

Массивы

Использование цикла for при работе с массивами

Пример цикла, использующего возвращение значения функции

Обсуждение программы

Использование функций с возвращаемым значением

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 7. Управляющие операторы языка С: ветвление и безусловные переходы

Оператор if

Основные сведения об операторе if

Добавление else в оператор if

Еще один пример: знакомство с функциями getchar() и putchar()

Семейство символьных функций из файла ctype.h

Многократный выбор: оператор else if

Объединение else и if в пары

Больше вложений операторов if

Давайте будем логичными

Приоритет операций

Порядок вычисления выражений

Диапазоны значений

Программа подсчета слов

Условная операция: ?

Дополнительные средства организации цикла: continue и break

Оператор continue

Оператор break

Множественный выбор: операторы switch и break

Как пользоваться оператором switch

Считывание только первого символа строки

Множественные метки

Операторы switch и конструкция if else

Оператор goto

Избегайте использования оператора goto

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 8. Символьный ввод/вывод и перенаправление

Односимвольные функции ввода/вывода: getchar() и putchar()

Буферы

Прерывание ввода с клавиатуры

Файлы, потоки и ввод с клавиатуры

Конец файла

Перенаправление и файлы

Перенаправление в системах UNIX и DOS

Графический пример

Создание дружественного интерфейса пользователя

Работа с буферизованным вводом

Комбинированный символьно-числовой ввод

Символьные эскизы

Анализ программы

Организация меню

Задачи

Обеспечение бесперебойного выполнения

Комбинированный символьно-числовой ввод

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 9. Функции

Введение

Создание и использование простой функции

Аргументы функции

Определение функции, имеющей аргумент: формальные аргументы

Объявление прототипа функции, имеющей аргументы

Вызов функции, содержащей аргумент: фактические аргументы

Представление в виде черного ящика

Возвращение значения функции с помощью оператора return

Типы функций

Прототипирование функций ANSI С

Проблема

Решение ANSI

Отсутствующие аргументы и неопределенные аргументы

Рекурсия

Рекурсия в действии

Основы рекурсии

Хвостовая рекурсия

Рекурсия и обратный порядок

Все функции языка С равноправны

Компиляция программ, содержащих две и более функции

UNIX

Linux

Компиляторы командной строки DOS

Компиляторы Windows и Macintosh

Использование заголовных файлов

Определение адресов: операция &

Изменение переменных в вызывающей функции

Указатели: первое знакомство

Оператор косвенной адресации: *

Объявление указателей

Использование указателей для обмена данными между функциями

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 10. Массивы и указатели

Массивы

Инициализация и классы памяти

Присвоение значений элементам массива

Указатели на массивы

Функции, массивы и указатели

Массив имен в качестве аргументов

Использование указателей в качестве аргументов

Комментарии: указатели и массивы

Операции с указателями

Защита содержимого массивов

Использования ключевого слова const применительно к формальным параметрам

Дополнительные сведения о ключевом слове const

Многомерные массивы

Инициализация двумерного массива

Дополнительные измерения

Указатели и многомерные массивы

Функции и многомерные массивы

Планирование программы

Общий план

Функция read_array()

Функция show_array()

функция mean()

Результат

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 11. Символьные строки и строковые функции

Определение строк внутри программы

Константы символьных строк

Массивы символьных строк и инициализация

Сравнение представлений в форме массива и указателя

Явное указание размера массива

Массивы символьных строк

Указатели и строки

Ввод строк

Создание области хранения

Функция gets()

Функция fgets()

Функция scanf()

Вывод строк

Функция puts()

Функция fputs()

функция printf()

Возможность создания собственных функций

Строковые функции

Функция strlen()

Функции strcat() и strncat()

Функции strcmp() и stmcmp()

Функции strcpy() и stmcpy()

Функция sprintf()

Прочие строковые функции

Пример обработки строк: сортировка строк

Сортировка

Символьные функции и строки семейства ctype.h

Аргументы командной строки

Аргументы командной строки в интегрированных средах

Аргументы командной строки в среде Macintosh

Преобразования строк в цифры

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 12. Файловый ввод/вывод

Взаимодействие с файлами

Что такое файл?

Уровни ввода/вывода

Стандартные файлы

Стандартный ввод/вывод

Проверка аргументов командной строки

Функция fopen()

Функции getc() и putc()

Функция fclose()

Стандартные файлы

Простая программа сжатия файлов

Файловый ввод/вывод: fprintf(), fscanf(), fgets() и fputs()

Функции fprintf() и fscanf()

Функции fgets() и fputs()

Реализация произвольного доступа: fseek() и ftell()

Как работают функции fseek() и ftell()?

Двоичный и текстовый режимы

Переносимость

Функции fgetpos() и fsetpos()

За кулисами стандартного ввода/вивода

Другие функции стандартного ввода/вывода

Функция int ungetc(int с, FILE *fp)

Функция int fflush(FILE *fp)

Функция int setvbuf(FILE *fp, char *buf, int mode, size_t size)

Двоичный ввод/вывод: функции ofread() и fwrite()

Функция size_t fwrite(void *ptr, size_t size, size_t nmemb, FILE *fp)

Функция size_t fread(void *ptr, size_t size, size_t nmemb, FILE *fp)

Функции int feof(FILE *fp) и int ferror(FILE *fp)

Пример

Произвольный доступ с помощью двоичного ввода/вывода

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 13. Классы памяти разработка программ

Классы памяти и область видимости

Область видимости, связывание и продолжительность хранения

Автоматические переменные

Внешние переменные

Определения и объявления

Статические переменные

Внешние статические переменные

Программы, использующие несколько файлов

Область видимости и функции

Переменные регистра

Какой класс памяти выбрать?

Функция генерации случайных чисел

Игра в кости

Сортировка чисел

Глобальные решения

Чтение числовых данных

Функция getarray()

Сортировка данных

Печать данных

Результаты

Комментарии

Классификаторы типов ANSI С

Классификатор типа const

Классификатор типа volatile

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 14. Структуры и другие формы данных

Задача: создание описи книг

Объявление структуры

Определение переменных структуры

Инициализация структуры

Доступ к элементам структуры

Массивы структур

Объявление массива структур

Идентификация элементов массива структур

Анализ программы

Вложенные структуры

Указатели на структуры

Объявление и инициализация указателя структуры

Доступ к элементам структуры с помощью указателя

Передача функциям информации о структурах

Передача элементов структуры

Использование адреса структуры

Передача структуры в качестве аргумента

Новые возможности структур

Выбор между структурами и указателями на них

Выбор между массивами символов и указателями на символы в структуре

Функции, использующие массив структур

Сохранение содержимого структуры в файле

Анализ программы

Структуры: что дальше?

Краткий обзор соединений

Краткий обзор функции typedef

Эффектные объявления

Функции и указатели

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 15. Дополнительные сведения о битах

Двоичные числа, биты и байты

Двоичные целые числа

Целые числа со знаком

Двоичная система с плавающей точкой

Системы счисления с другими основаниями

Восьмеричная система счисления

Шестнадцатиричная система счисления

Побитовые операции языка С

Побитовые логические операции

Применение: маски

Применение; переключение битов в положение ON

Применение: отключение битов

Применение: переключение битов

Применение: проверка значения бита

Операции побитового смещения

Программный пример

Другой программный пример

Поля битов

Пример поля битов

Поля битов и побитовые операторы

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 16. Препроцессор С и библиотека С

Именованные константы: #define

Символы

Переопределение констант

Использование аргументов для #define

Включение в строку макроаргумента

Макрос или функция?

Включение файлов: #include

Заголовочные файлы: пример

Использование заголовочных файлов

Другие директивы

Директива #undef

Условная компиляция

Перечислимые типы

Константы enum

Значения, принятые по умолчанию

Присвоенные значения

Использование

Библиотека С

Получение доступа к библиотеке С

Использование описаний библиотеки

Библиотека математических функций

Библиотека утилит общего назначения

Функции exit() и atexit()

Распределение памяти: malloc() и free()

Функция саllос()

Классы памяти и динамическое распределение памяти

Функция qsort()

Библиотека для хранения утверждений

Резюме

Контрольные вопросы

Упражнения по программированию

Глава 17. Расширенное представление данных

Исследование представления данных

От массива к связанному списку

Использование связанного списка

Создание списка

Запоздалые соображения

Абстрактные типы данных (ADT)

Получение абстрактного типа

Создание интерфейса

Использование интерфейса

Реализация интерфейса

Реализация очереди с помощью ADT

Реализация интерфейса представления данных

Тестирование очереди

Имитация реальных ситуаций с помощью очереди

Сравнение связанного списка с массивом

Деревья двоичного поиска

ADT двоичного дерева

Интерфейс дерева двоичного поиска

Реализация двоичного дерева

Проверка дерева

Размышления по поводу дерева

Другие направления

Резюме

Контрольные вопросы

Упражнения по программированию

Приложение А. Дополнительная литература

Язык С

Программирование

Ссылки

Приложение В. Операторы и операции в языке С

Арифметические операции

Операции отношений

Выражения отношений

Операторы присваивания

Пример

Логические операции

Логические выражения

Порядок оценки логических выражений

Примеры

Условный оператор

Примеры

Операции, связанные с указателями

Пример

Операции изменения знака

Операции над структурами и объединениями

Операция принадлежности

Пример

Операция косвенной принадлежности (или указатель на структуру)

Пример

Побитовые операции

Примеры

Дополнительные операции

Пример

Приложение С. Основные типы данных и классы памяти

Обзор: основные типы данных

Ключевые слова

Целые числа со знаком

Целые числа без знака

Символы

Числа с плавающей точкой

Резюме: как определить простую переменную

Резюме: описатели

Ключевые слова

Общие замечания

Свойства

Приложение D. Выражения, операторы и контроль выполнения программы

Резюме: выражения и операторы

Выражения

Операторы

Резюме: оператор while

Ключевое слово

Общие замечания

Форма

Примеры

Резюме: оператор for

Ключевое слово

Общие замечания

Форма

Пример

Резюме: оператор do while

Ключевые слова

Общие замечания

Форма

Пример

Резюме: использование оператора if для выбора вариантов

Ключевые слова

Общие замечания

Форма 1

Форма 2

Форма 3

Пример

Резюме: многовариантный выбор с помощью switch

Ключевое слово

Общие замечания

Форма

Примеры

Резюме: переходы в программе

Ключевые слова

Общие замечания

Команда break

Команда continue

Команда goto

Приложение Е. Таблица кодов ASCII

Приложение F. Библиотека С стандарта ANSI

Диагностика: assert.h

Обработка символов: ctype.h

Локализация: locale.h

Математическая библиотека: math.h

Нелокальные переходы: setjmp.h

Обработка сигналов: signal.h

Переменные аргументы: stdarg.h

Стандартная библиотека ввода/вывода: stdio.h 396

Общие утилиты: stdlib.h

Обработка строковых величин: string.h

Дата и время: time.h

Приложение G. Различия между языками С и C++

Объявления

Прототипы функций

Определения функций

Комментарии

Константы char

Модификатор const

Структуры и объединения

Перечисления

Управление типами указателей

Приложение H. Комитет С9Х

Типы

Новые типы

Расширение целых чисел: перносимые типы

Усовершенствованные вычислительные средства поддержки

Заголовочный файл fenv.h

Дополнения к библиотеке math.h

Поддержка комплексных чисел

Ключевое слово restrict

Поддержка расширенных наборов символов

Приложение I. Ответы на контрольные вопросы

Рекомендуемые книги

Купить Перекресток

Перекресток

Чеповой Владимир, Ясная Анна

190 грн
Купить Наше малятко

Наше малятко

Мацко Ірина

75 грн
Купить Bread Street Kitchen. Рецепты восхитительно вкусных домашних завтраков, обедов и ужинов

Bread Street Kitchen. Рецепты восхитительно вкусных домашних завтраков, обедов и ужинов

Гордон Рамзи

540 грн
Купить Весь невидимый нам свет

Весь невидимый нам свет

Энтони Дорр

78 грн
Купить Картон кольоровий одностор. А4 (10 аркушів/ 10 кольорів), папка, Kite

Картон кольоровий одностор. А4 (10 аркушів/ 10 кольорів), папка, Kite

22 грн
Купить Природа пространства и времени

Природа пространства и времени

Стивен Хокинг

335 грн
Купить Кардио или силовая? Какие нагрузки подходят именно вам

Кардио или силовая? Какие нагрузки подходят именно вам

Алекс Хатчинсон

350 грн
Купить Зошит 12 аркушів, клітинка. Hot Wheels

Зошит 12 аркушів, клітинка. Hot Wheels

5 грн
Купить Доминирующие парадигмы трансцендентализма западноевропейской философии

Доминирующие парадигмы трансцендентализма западноевропейской философии

Валерий Семенов

200 грн
Купить One-Punch Man.Книга 3

One-Punch Man.Книга 3

ONE

230 грн
Купить Аудит продажу. Дистрибуція

Аудит продажу. Дистрибуція

Олесь Піщак, Дмитро Горлін, Асан Бекіров, Іван Даніленко

320 грн
Купить Развязка. Конец долгового суперцикла и его последствия

Развязка. Конец долгового суперцикла и его последствия

Джон Молдин, Джонатан Теппер

413 грн
Купить Олівці кольорові тригран, 12 шт., мет. пенал Kite «Тварини»

Олівці кольорові тригран, 12 шт., мет. пенал Kite «Тварини»

84 грн
Купить Папа, мама, бабушка, восемь детей и грузовик

Папа, мама, бабушка, восемь детей и грузовик

Анне-Катрине Вестли

190 грн
Купить Акрил вверх дном. Нестандартный подход, сюжеты и идеи для вдохновения

Акрил вверх дном. Нестандартный подход, сюжеты и идеи для вдохновения

Анита Хёрскенс

700 грн
Купить Вероятностное программирование на Python: байесовский вывод и алгоритмы

Вероятностное программирование на Python: байесовский вывод и алгоритмы

Кэмерон Дэвидсон-Пайлон

840 грн
Купить Женский ежедневни Флай планнер "Цветочная корзина"

Женский ежедневни Флай планнер "Цветочная корзина"

Светлана Гончарова

235 грн
Купить Ворошиловград

Ворошиловград

Сергій Жадан

120 грн
Купить Дім, де жевріє світло

Дім, де жевріє світло

Ельчін Сафарлі

160 грн
Купить Технология жизни. Книга для героев

Технология жизни. Книга для героев

Тарасов Владимир

305 грн
Купить Дім, милий дім. Розмальовка XXL (конверт)

Дім, милий дім. Розмальовка XXL (конверт)

100 грн
Купить Мозгоеды. Что в головах у тех, кто сводит нас с ума. Волшебный пинок к нормальной жизни

Мозгоеды. Что в головах у тех, кто сводит нас с ума. Волшебный пинок к нормальной жизни

Ника Набокова

240 грн
Купить Humpty and His Family = Страусёнок Хампти и его семья

Humpty and His Family = Страусёнок Хампти и его семья

Юлия Пучкова

76 грн
Купить Пеппі Довгапанчоха (зелена)

Пеппі Довгапанчоха (зелена)

Астрид Линдгрен

315 грн
Купить 101 совет как пройти собеседование

101 совет как пройти собеседование

Замятина А.

39 грн
Купить Звездное небо. Галактики, созвездия, метеориты

Звездное небо. Галактики, созвездия, метеориты

Валентин Цветков

83 грн
Купить Чарівний талісман

Чарівний талісман

Всеволод Нестайко

125 грн
Купить Ребенок от рождения до года. Практическое руководство по уходу и воспитанию

Ребенок от рождения до года. Практическое руководство по уходу и воспитанию

Польен Бом, Махтельд Хубер

235 грн
Купить Тайная опора: привязанность в жизни ребенка

Тайная опора: привязанность в жизни ребенка

Людмила Петрановская

180 грн
Купить Ботаническая иллюстрация цветными карандашами. Пошаговое руководство

Ботаническая иллюстрация цветными карандашами. Пошаговое руководство

Энн Свон

490 грн
Купить Научиться писать маслом быстро

Научиться писать маслом быстро

Хэйзел Соун

230 грн
Купить Чизкейк внутри. Сложные и необычные торты — легко!

Чизкейк внутри. Сложные и необычные торты — легко!

Виктория Мельник

285 грн
Купить Пригоди Шерлока Холмса. Том IV

Пригоди Шерлока Холмса. Том IV

Артур Конан Дойль

145 грн
Купить Сорока-білобока . Серія Оченята

Сорока-білобока . Серія Оченята

42 грн
Купить Как найти выход из любой конфликтной ситуации

Как найти выход из любой конфликтной ситуации

Дейл Карнеги

155 грн
Купить Здорове харчування у великому місті

Здорове харчування у великому місті

Доктор Регіна

200 грн
Купить Бон чи тон, або гарні манери для дітей

Бон чи тон, або гарні манери для дітей

Гжегож Касдепке

230 грн
Купить Rework. Ця книга переверне ваш погляд на бізнес

Rework. Ця книга переверне ваш погляд на бізнес

Джейсон Фрайд

140 грн
Купить Бог ніколи не моргає. 50 уроків, які змінять твоє життя

Бог ніколи не моргає. 50 уроків, які змінять твоє життя

Регина Бретт

86 грн
Купить Пам'ятки національної культурної спадщини України «Незвідана Україна»

Пам'ятки національної культурної спадщини України «Незвідана Україна»

Андрей Глазовый, Юлия Ференцова, Игорь Лыльо

400 грн

Книги из категории "Книги по программированию"

Купить 100 примеров на С++

100 примеров на С++

Акимова А.В., Кольцов Д.М.

340 грн
Купить Структуры данных и алгоритмы их обработки на языке программирования Паскаль

Структуры данных и алгоритмы их обработки на языке программирования Паскаль

Касторнова В.

353 грн
248 грн
Купить Visual C++.NET. Классика программирования +CD

Visual C++.NET. Классика программирования +CD

Степаненко О.Е.

83 грн
42 грн
Купить Java за 24 часа

Java за 24 часа

Роджерс Кейденхед

330 грн
Купить Наиболее эффективное программирование на C#: 50 способов улучшения кода

Наиболее эффективное программирование на C#: 50 способов улучшения кода

Билл Вагнер

495 грн
Купить Изучаем Python, том 2

Изучаем Python, том 2

Марк Лутц

900 грн
Купить Intrusion Signature and Analysis

Intrusion Signature and Analysis

198 грн
99 грн
Купить JRuby. Сборник рецептов.

JRuby. Сборник рецептов.

Эдельсон Д., Лю Г.

240 грн
120 грн
Купить Xbox 360. Работа с игровой приставкой

Xbox 360. Работа с игровой приставкой

Станислав Горнаков

173 грн
87 грн
Купить Введение в глубокое обучение

Введение в глубокое обучение

Евгений Черняк

330 грн
Купить C# для чайников

C# для чайников

Джон Пол Мюллер, Билл Семпф, Чак Сфер

420 грн
Купить WebObjects web application. Constraction kit

WebObjects web application. Constraction kit

248 грн
124 грн
Купить Учимся программировать с примерами на Python (серия Head First)

Учимся программировать с примерами на Python (серия Head First)

Эрик Фримен

590 грн
Купить Programming & Problem Solving with Delphi +CD

Programming & Problem Solving with Delphi +CD

Kerman Mitchell

359 грн
180 грн
Купить Spring 4 для профессионалов

Spring 4 для профессионалов

Крис Шефер, Кларенс Хо, Роб Харроп

1 080 грн
972 грн
Купить Язык программирования Go

Язык программирования Go

Алан А. А. Донован, Брайан У. Керниган

590 грн
Купить CSS. Карманный справочник

CSS. Карманный справочник

Эрик А. Мейер

175 грн
Купить Чиста архітектура

Чиста архітектура

Роберт Мартін

430 грн
Купить Искусство алгоритмизации

Искусство алгоритмизации

Виталий Потопахин

611 грн
428 грн
Купить CUDA Fortran для ученых и инженеров

CUDA Fortran для ученых и инженеров

Рутм Г., Фатика М.

666 грн
533 грн

Цитаты пользователей

Всего цитат
0

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.

Отзывы

Отзывы
0 рецензий

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.
Все права защищены © 2003-2020 Bookzone.com.ua              Условия использования | Политика конфиденциальности
Интеграция сайта с 1С: ©SUPC