Лекции. Основные понятия и определения
Скачать 1.94 Mb.
|
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
ОГЛАВЛЕНИЕ ВВЕДЕНИЕ 2 1. ОСНОВНЫЕ ПОНЯТИЯ И ОПРЕДЕЛЕНИЯ 4 1.1. КОМПЬЮТЕР 4 Память 4 Процессор 5 Периферия 6 1.2. АЛГОРИТМЫ 6 Формы записи алгоритмов 6 Естественный язык 6 Блок – схемы (по ГОСТу - Схемы алгоритмов) 7 Псевдокоды 7 1.3. ПРОГРАММЫ И ЯЗЫКИ 8 Основные понятия языка программирования 8 Выполнение программы 8 Машинный и алгоритмический языки 9 Метаобозначения 10 Этапы обработки программы на компьютере 10 Терминология 10 Трансляция 11 Редактирование связей (компоновка) 12 Загрузка 12 Выполнение 13 Типы вычислительных процессов 13 Следование 13 Развилка 13 Цикл 14 1.4. Данные 15 Системы счисления 15 Типы и совокупности данных 17 Целые 17 Вещественные 17 Логические 18 Строки 18 Совокупности данных 18 2. ЭЛЕМЕНТЫ ЯЗЫКА 19 2.1. История языков С и Basic 19 2.2. Алфавит 19 2.3. Идентификаторы 20 С 20 Basic 20 2.4. Знаки разрядки 20 2.5. Комментарии 20 С 21 Могут ставиться везде, где допустим знак разрядки. Транслятор рассматривает их как пробел. 21 Basic 21 2.6. Запись текста программы 21 С 21 Basic 21 Вопросы для самопроверки и контроля 23 Вопросы для самопроверки 23 Контрольные вопросы 23 3. ЭЛЕМЕНТЫ ДАННЫХ 24 3.1. Типы данных 24 3.1.1. Целые 24 3.1.2. Данные с плавающей точкой 25 3.1.3. Логический тип 26 3.1.4. Символьные данные 26 3.1.5. Дополнительные типы данных 28 3.2. Совокупности данных 28 3.2.1. Массивы 28 Объявления массивов 28 С 28 Basic 30 Обращение к элементу массива 32 3.2.2. Структуры 32 Вопросы для самопроверки и контроля 33 Вопросы для самопроверки 33 Контрольные вопросы 33 4. ВЫРАЖЕНИЯ 34 4.1. Арифметические операторы 34 Основные 34 Дополнительные 35 Приоритет 35 C 35 Basic 35 4.2. Операторы конкатенации 35 4.3. Операторы сравнения 36 4.4. Логические операторы 36 4.5. Обращение к функции 38 4.6. Встроенные функции 38 4.7. Заключительные замечания 40 Вопросы для самопроверки и контроля 40 Вопросы для самопроверки 40 Контрольные вопросы 40 5. ОСНОВНЫЕ ИНСТРУКЦИИ 42 5.1. Объявления 42 C 42 Basic 42 5.2. Присваивание 43 C 43 Basic 43 5.3. Безусловный переход 43 C 44 5.4. Инструкция If. Пустая инструкция 44 C 44 5.5. Составная инструкция 47 5.6. Циклы 47 C 48 5.6.1. Циклы с предусловием 49 Циклы while 49 C 49 Basic 49 Циклы for 50 C 50 Basic 52 5.6.2. Циклы с постусловием 53 C 53 5.6.3. Вложенные циклы 54 C 54 Basic 54 C 55 Basic 56 C 56 Basic 56 5.7. Управляемые переходы 56 5.7.1. Инструкция break 56 5.7.2. Инструкция continue 57 5.7.3. Инструкции exit и continue 58 5.8. Многоальтернативный выбор 58 5.8.1. Инструкция switch (язык С) 58 5.8.2. Инструкция select case (язык Basic) 60 Вопросы для самопроверки и контроля 61 Вопросы для самопроверки 61 Контрольные вопросы 62 6. ВВОД-ВЫВОД 63 6.1. Язык Си 63 6.1.1. Управляющая строка 63 6.1.1.1. Спецификация d (целые десятичные числа) 64 6.1.1.2. Спецификация f (десятичные числа с плавающей точкой) 65 6.1.1.3. Спецификация e (десятичные числа с плавающей точкой) 66 6.1.1.4. Спецификация g (универсальная спецификация) 67 6.1.2. Вывод символьной информации 67 6.1.3. Инструкции printf и scanf. Схема ввода-вывода 69 6.1.4. Ввод-вывод массивов 71 Ввод 71 Вывод 71 6.1.5. Очистка и останов экрана 71 6.2. Язык Basic 72 6.2.1. Метод ReadLine 72 6.2.2. Методы Write и WriteLine 73 Вопросы для самопроверки и контроля 74 Вопросы для самопроверки 74 Контрольные вопросы 74 7. ПРОЦЕДУРЫ 75 7.1. Распределение памяти 75 7.1.1. Распределение скаляров 75 7.1.2. Распределение массивов 75 7.1.3. Статическое и динамическое распределение памяти 76 7.2. Блоки 76 7.3. Процедуры 77 C 77 7.3.1. Определения процедур 78 7.3.2. Передача данных между процедурами 81 Механизмы передачи данных 81 Прототипы функций (C) 82 Передача скаляров 84 Возвращаемое значение 84 Входные данные 84 Выходные данные 86 Передача массивов 88 Передача функций 93 Вопросы для самопроверки и контроля 98 Вопросы для самопроверки 98 Контрольные вопросы 98 8. ПРЕПРОЦЕССОР 99 8.1. Определение символических констант 99 8.2. Включение файлов в текст программы 100 Вопросы для самопроверки и контроля 103 Вопросы для самопроверки 103 Контрольные вопросы 103 9. СТИЛЬ ПРОГРАММИРОВАHИЯ 104 9.1. Формирование листинга 104 Перенос: 104 9.2. Комментарии 105 9.3. Имена 106 Имена объектов программы должны быть осмысленными. 106 Не используйте в программе сходные имена! 106 Если имя содержит цифры, записывайте их в конце. 107 Имя не должно совпадать с ключевым словом или с именем библиотечной или встроенной функции. 107 9.4. Язык и приемы программирования 107 1. Активно используйте удобные и понятные особенности языка. 107 2. Изучайте и используйте библиотечные функции. Малоупотребительные комментируйте. 107 3. Не применяйте трюки! 107 4. Не игнорируйте предупреждения и старайтесь их ликвидировать! 107 5. Избегайте промежуточных переменных. Формулы следует записывать в том же виде, как это принято в математике. 108 6. Не изменяйте значение параметра цикла внутри тела цикла. 108 7. Избегайте инструкций перехода. 108 8. Объявляйте все переменные явно. 108 9. Не используйте одни и те же переменные для различных целей. 108 10. Не забывайте, что данные с плавающей точкой есть приближенные представления десятичных значений. 108 11. Используйте исчерпывающие проверки. 109 9.5. Стиль в языках С и Basic 109 Вопросы для самопроверки и контроля 111 Вопросы для самопроверки 111 Контрольные вопросы 111 10. ДАННЫЕ. ДОПОЛНЕНИЕ 112 10.1. Перечислимый тип 112 10.1.1. Тип enum (C++) 112 10.1.2. Тип enum (B) 113 10.2. Тип decimal (B) 113 10.3. Тип date (B) 114 10.4. Тип void (С) 118 10.5. Подмассивы (сечения) (C) 118 10.6. Динамические массивы (B) 119 10.7. Структуры и объединения 120 10.7.1. Структуры 120 10.7.2. Рекурсивные структуры (С++) 123 10.7.3. Поля битов (С) 125 10.7.4. Объединения (смеси) (С) 126 10.7.5. Переменные структуры 126 10.8. Тип object (B) 127 10.9. Тип delegate (B) 128 10.10. Пользовательские типы данных 129 10.11. Преобразование типов 129 10.10.1. Автоматические преобразования 130 10.10.2. Явные преобразования 130 Вопросы для самопроверки и контроля 132 Вопросы для самопроверки 132 Контрольные вопросы 132 11. ОПЕРАТОРЫ. ДОПОЛНЕНИЕ 133 11.1. Уровень 1 133 11.2. Уровень 2 (унарные или одноместные операторы) 134 11.3. Уровень 3 (мультипликативные операторы) 136 11.4. Уровень 4 (аддитивные операторы) 136 11.5. Уровень 5 (сдвиги) 137 11.6. Уровень 6 (отношения) 137 11.7. Уровень 7 (равенство и неравенство) 138 11.8. Поразрядные операторы 138 11.9. Логические операторы 138 11.10. Уровень 13 (условное выражение) 139 11.11. Уровень 14 (операторы присваивания) 139 11.12. Уровень 15 (оператор ',' - запятая) 140 11.13. Некоторые замечания 141 11.14. Постоянные выражения 141 Вопросы для самопроверки и контроля 141 Вопросы для самопроверки 141 Контрольные вопросы 141 12. ПЕРЕДАЧА ДАННЫХ ПОТОКОМ 143 12.1. Спецификация "s" управляющей строки функций scanf и printf 143 12.2. Функции getchar и putchar 144 12.3. Функции gets и puts 144 12.4. Внутренняя передача данных (функции sscanf и sprintf) 145 Вопросы для самопроверки и контроля 146 Вопросы для самопроверки 146 Контрольные вопросы 146 13. ФАЙЛЫ 147 13.1. Основные понятия 147 13.2. Описание файла 147 13.3. Открытие и закрытие файлов 148 13.4. Средства языка С 149 13.4.1. Открытие и закрытие файла 149 13.4.2. Основные функции обмена 149 13.5. Средства языка Basic 150 13.5.1. Открытие и закрытие файла 150 Инструкция FileOpen 150 Инструкция FileClose 150 13.5.2. Работа с файлами 151 Инструкция Input 151 Инструкция LineInput 151 Инструкции Write и WriteLine 151 Инструкции Print и PrintLine 152 Дополнительные функции 152 Функция MsgBox 152 Вопросы для самопроверки и контроля 154 Вопросы для самопроверки 154 Контрольные вопросы 154 154 14. СТРУКТУРА ПРОГРАММЫ 155 14.1. Элементы структуры программы. 155 14.1.1. Язык C++ 155 14.1.2. Язык Basic 156 14.2. Область видимости (действия) и время жизни переменных 157 14.2.1. Язык C 159 14.2.2. Язык Basic 161 14.3. Инициализация данных 163 14.3.1. Язык С 163 14.3.2. Язык Basic 166 14.4. Рекомендуемая структура программы 166 14.4.1. Структура модуля на языке Basic 166 14.4.2. Структура модуля на языке C 166 Вопросы для самопроверки и контроля 167 Вопросы для самопроверки 167 Контрольные вопросы 167 15. УКАЗАТЕЛИ, МАССИВЫ, СТРОКИ 168 15.1. Указатели 168 Определение указателей 168 Задание значений 168 Вывод значений 168 15.2. Указатели и массивы 169 15.3. Работа со строками 170 15.3.1. Литералы 170 15.3.2. Переменные 171 15.3.3. Операторы и функции 171 15.4. Динамические объекты 178 15.5. Типичные ошибки, связанные с указателями 179 Отсутствие инициализации указателя 179 Двойное указание 180 Hе выполнено освобождение выделенной памяти 180 Задание адреса локальной (auto) переменной 180 Не следует использовать явное задание адреса (pt=(double*)0777000) 180 15.6. Примеры использования указателей. Структуры данных 180 15.6.1. Стек 180 15.6.2. Однонаправленный список 183 15.7. Ссылки УКАЗАТЕЛИ и многомерные массивы 184 15.8. Рекурсивные процедуры 185 15.8.1. Рекурсивное решение 187 15.8.2. Нерекурсивное решение. Стек в виде массива 187 15.8.3. Нерекурсивное решение. Стек в виде списка 189 Вопросы для самопроверки и контроля 192 Вопросы для самопроверки 192 Контрольные вопросы 192 16. РАБОТА С ЭКРАHОМ 194 16.1. Ввод/вывод и манипулирование 195 Ввод 195 Вывод 195 Манипулирование цветом и курсором 195 16.2. Управление окном 196 16.3. Управление атрибутом (цветами символа и фона в окне) 196 16.4. Информация о текстовом режиме 196 16.5. Пример 196 16.6. Пример(продолжение) 198 Вопросы для самопроверки и контроля 199 Вопросы для самопроверки 199 Контрольные вопросы 199 ЗАДАЧИ 200 Элементарные конструкции 200 Простые циклы 201 Вложенные циклы 203 Процедуры 206 Работа со строками 208 Разное 209 ПРИЛОЖЕНИЯ. ПРОЕКТ ПРОГРАММЫ. СРЕДСТВА РАЗРАБОТКИ 212 Приложение 1. Среда разработки MinGW C/C++ 4.8 212 П 1.1. Установка среды 212 П 1.2. Запуск среды 212 П1.3. Меню Файл 215 П1.4. Меню Сервис 216 П1.5. Отладка 218 Начало отладки 218 Установка точек прерывания 218 Прогон до точки прерывания 219 Пошаговое выполнение программы 219 Получение значений объектов программы 220 Приложение 2. Среда разработки Visual Basic 221 П2.1. Запуск среды 221 П2.2. Подготовка к работе с новым проектом 222 П2.3. Окна и режимы работы 223 П2.4. Главное меню 225 П2.5. Меню File (Файл) 225 П2.6. Редактирование текста 226 П2.7. Меню View (Вид) 226 П2.8. Меню Project (Проект) 226 П2.9. Отладка 227 Точки прерывания 227 Определение значений объектов программы в момент прерывания 227 Продолжение работы 228 П2.10. Меню Tools (Сервис) 228 П2.11. Меню Window (Окно) 229 Приложение 3. Ответы на вопросы для самопроверки 230 2. Элементы языка 230 3. Элементы данных 230 4. Выражения 230 5. Основные инструкции 231 6. Ввод-вывод 232 7. Процедуры 232 8. Препроцессор 232 9. Стиль программирования 232 10. Данные. Дополнение 233 11. Операторы. Дополнение 234 12. Передача данных потоком 234 13. Файлы 234 14. Структура программы 235 15. Указатели, массивы, строки 235 16. Работа с экраном 235 Приложение 4. Темы для курсовой работы 236 БИБЛИОГРАФИЧЕСКИЙ СПИСОК 239 |