Программа контрольной работы №1
Околотеоретические вопросы:
- Что такое переменная? Чем характеризуется переменная? Что такое тип? Чем характеризуется тип?
- Примитивные типы в Си. Диапазоны значений. Переполнение. Дополнительный код. Отличия префиксного и постфиксного инкремента/декремента. .
- Функции. Передача параметров в функцию. Функция main(). Оператор return.
- Что такое указатель? Объявление указателей. Разыменование/взятие адреса. Для чего применяются указатели? Адресная арифметика. void *. Указатель на функцию.
- Указатели и массивы, строки.
Как связаны синтаксис доступа к элементу массива и разыменование указателя? Передача массивов в функцию.
Как представляются строковые данные в Си? Таблица ASCII. Получение кода символа. Получение числа соответствующего символу-цифре.
Устройство многомерных массивов. Массив указателей. Проблемы при неправильном обращении с указателями. Выход за край массива.
- Динамическая память. Типичные ошибки при работе с динамической памятью.
Решение задач:
- Уметь написать любую простую сортировку (пузырьком, вставками, выбором, гномья и т.д.)
- Уметь написать бинарный поиск в упорядоченном массиве (в цикле, рекурсивно)
- Уметь обрабатывать строки (strstr(), strcpy(), strcspn(), разворот строки, проверка на палиндром, удаление пробелов)
- Уметь пользоваться scanf()/printf() (напечатать/считать строку, целое, вещественное, символ)
- Уметь пользоваться calloc()/free()
- Уметь пользоваться битовыми операциями (подсчет значащих бит, установка произвольного бита, проверка произвольного бита)
- Уметь считать/записать числа, строки, символы в файл.