Данная книга предназначена для практического изучения языка программирования Си.
Изложение материала ведется на основе примеров. Перед примерами дается небольшая теоретическая часть, а затем разбираются конкретные примеры.
Такой подход позволит читателю уже с первых шагов писать работающие программы. Примеры в книге приведены по нарастающей сложности: от простых программ с использованием простых конструкций до небольшой компьютерной игры и клиент-серверного приложения.
Книга будет полезна всем, кто хочет максимально быстро и эффективно начать программировать на языке Си, а также тем, кто хочет получить набор готовых решений для разных ситуаций. Книга не требует начальных знаний программирования, лучший выбор для начинающих.
Author(s): Кольцов Д.М.
Series: Просто о сложном
Publisher: Наука и Техника
Year: 2017
Language: Russian
Pages: 256
City: СПб.
Часть 1. Введение
Пример 1. Программа "Привет, мир!"
Пример 2. Выводим целое число, введенное пользователем
Пример З. Сумма двух чисел
Пример 4. Умножение двух вещественных чисел
Пример 5. Определение ASCII-значения символа
Пример 6. Вычисляем частное и остаток
Пример 7. Вычисляем размер int, float, double и char
Пример 8. Как работает ключевое слово long
Пример 9. Меняем местами два числа
Часть 2. Принятие решений и циклы
Пример 10. Проверяем, является ли число четным или нет
Пример 11. Проверяем, является ли символ гласным или согласным
Пример 12. Определяем максимум среди трех чисел
Пример 13. Вычисляем все корни квадратного уравнения. Подключение библиотеки math
Пример 14. Является ли год високосным
Пример 15. Проверяем, является ли число отрицательным или положительным
Пример 16. Вычисляем сумму натуральных чисел
Пример 17. Проверяем, является ли символ алфавитным или нет
Пример 18. Вычисление факториала
Пример 19. Выводим таблицу умножения
Пример 20. Выводим последовательность Фибоначчи
Пример 21. Вычисления НОД двух чисел
Пример 22. Наименьшее общее кратное
Пример 23. Подсчитываем количество цифр целого числа
Пример 24. Вычисляем обратное число
Пример 25. Вычисляем степень числа
Пример 26. Проверяем, является ли число палиндромом или нет
Пример 27. Является ли число простым
Пример 28. Выводим простые числа в интервале
Пример 29. Проверяем число Армстронга
Пример 30. Выводим числа Армстронга в заданном диапазоне
Пример 31. Создаем пирамиду и структуру
Пример 32. Делаем простой калькулятор с использованием switch..case
Часть 3. Функции
Пример 33. Проверка простого числа или числа Армстронга с , использованием пользовательской функции
Пример 34. Отображаем простые числа между двумя интервалами с использованием функции
Пример 35. Проверяем, может ли число быть выраженным как сумма двух простых чисел
Пример 36. Сумма n натуральных чисел с использованием рекурсии
Пример 37. Факториал с использованием рекурсии
Пример 38. НОД с использованием рекурсии
Пример 39. Конвертируем двоичные числа в десятичные и наоборот
Пример 40. Конвертируем восьмеричные числа в десятичные и наоборот
Пример 41. Конвертируем двоичные числа в восьмеричные и наоборот
Пример 42. Выводим предложение в обратном порядке
Часть 4. Массивы и указатели
Пример 43. Вычисляем среднее с использованием массивов
Пример 44. Вычисляем наибольший элемент массива
Пример 45. Вычисляем среднеквадратичное отклонение
Пример 46. Сложение двух матриц с использованием многомерных массивов
Пример 47. Умножение на матрицу с использованием многомерных массивов
Пример 48. Транспонированная матрица
Пример 49. Умножение двух матриц с передачей матрицы в функции
Пример 50. Доступ к элементам массива с использованием указателей
Пример 51. Своп чисел в циклическом порядке с помощью вызова по ссылке
Пример 52. Поиск максимума с использованием динамического выделения памяти
Часть 5. Строки
Пример 53. Поиск частоты знаков в строке
Пример 54. Программа для подсчета количества цифр и пробелов
Пример 55. Удаляем все символы в строке, кроме цифровых
Пример 56. Определение длины строки
Пример 57. Конкатенация двух строк без функции strcat()
Пример 58. Копирование строки без функции strcpy()
Пример 59. Сортировка элементов в лексикографическом порядке
Часть 6. Структуры и объединения
Пример 60. Храним информацию о студенте в структуре
Пример 61. Сложение двух структур
Пример 62. Сложение двух комплексных чисел с использованием структуры и передачей структуры функции
Пример 63. Вычисление разницы между двумя периодами времени
Пример 64. Структуры и динамическое выделение памяти
Часть 7. Файлы
Пример 65. Запись предложения в файл
Пример 66. Чтение строки из файла и ее отображение
Пример 67. Отображаем исходный код программы
Часть 8. Готовые приложения
Пример 68. Приложение клиент-сервер
Пример 69. Мини-игра "Змейка"
Пример 70. Программа word count на С
Часть 9. Алгоритмы поиска и сортировки
Пример 71. Сортировка вставкой связного списка. Сортировка реального файла
Пример 72. Бинарный поиск в целочисленном массиве
Пример 73. Бинарный поиск по массиву указателей строк
Пример 74. Сортировка пузырьком
Пример 75. Пузырьковая сортировка связного списка
Пример 76. Пузырьковая сортировка массива строк. Сортировка реального файла
Пример 77. Пирамидальная сортировка
Пример 78. Сортировка вставкой массива по убыванию и по возрастанию
Пример 79. Сортировка слиянием. Связный список
Пример 80. Сортировка слиянием массива
Пример 81. Быстрая сортировка массива
Пример 82. Сортировка массива строк библиотечной функцией qsort()
Пример 83. Сортировка массивов указателей на структуры с помощью функции qsort()
Пример 84. Сортировка выбором
Пример 85. Сортировка с помощью бинарного дерева
Пример 86. Реверс связного списка
Часть 10. Еще немного практики
Пример 87. Делаем свой shell
Пример 88. Получение информации о системе
Пример 89. Пишем сообщения в системный журнал
Пример 90. Обработка полученного сигнала
Пример 91. Преобразование времени в формате UTC в строку и обратно
Пример 92. Слияние двух файлов
Пример 93. Получение информации о файле
Пример 94. Скрываем вводимый пользователем пароль
Пример 95. Сколько времени работает система? Показываем uptime
Пример 96. Удаляем HTML-разметку
Пример 97. Выводим IP-адреса, e-mail и URL, найденные в тексте
Пример 98. Выводим текст в картинку. Компиляция программы с использованием библиотеки gd
Пример 99. Создание временного файла
Пример 100. Открываем лоток DVD
Вместо заключения