- •Часть 1
- •Общие сведения Сведения об эумк
- •Методические рекомендации по изучению дисциплины
- •Рабочая учебная программа
- •Учреждение образования
- •«Белорусский государственный университет
- •Информатики и радиоэлектроники»
- •Часть 2 __184__
- •Содержание дисциплины
- •1. Индивидуальные практические занятия, их характеристика
- •2. Контрольные работы, их характеристика
- •3. Курсовой проект, его характеристика
- •4. Литература
- •4.1. Основная
- •4.2. Дополнительная
- •5. Перечень компьютерных программ, наглядных и других пособий, методических указаний и материалов и технических средств обучения
- •Протокол согласования учЕбной программы по изучаемой учебной дисциплине с другими дисциплинами специальности
- •Теоретический раздел Введение
- •1. Основные типы данных
- •1.1. Общие сведения
- •1.2. Данные типа int
- •1.3. Данные типа char
- •1.4. Модификаторы доступа const и volatile
- •1.5. Данные вещественного типа (с плавающей точкой)
- •1.6. Элементарный ввод-вывод
- •1.7. Структура простой программы на языке Си
- •2. Операции и выражения
- •2.1. Выражение и его интерпретация
- •2.2. Основные операции
- •2.2.1. Арифметические операции
- •2.2.2. Побитовые логические операции
- •2.2.3. Операции сдвига
- •2.2.4. Операция присваивания
- •2.2.5. Операция sizeof
- •2.2.6. Преобразование типов в выражениях
- •2.2.7. Операция преобразования типов
- •2.2.8. Приоритеты в языке Си
- •3. Операторы управления вычислительным процессом
- •3.1. Оператор if
- •3.2. Операции отношения
- •3.3. Логические операции
- •3.4. Операция запятая
- •3.5. Операция условия ?:
- •3.6. Оператор безусловного перехода goto
- •3.7. Оператор switch
- •`` ` `3.8. Операторы цикла
- •3.8.1. Оператор for
- •3.8.2. Оператор while
- •3.8.3. Оператор do...While
- •3.9. Оператор break
- •3.10. Оператор continue
- •4. Массивы и указатели
- •4.1. Одномерные массивы и их инициализация
- •4.2. Многомерные массивы и их инициализация
- •4.3. Объявление указателей
- •4.4. Операции над указателями
- •1) Взятие адреса
- •2) Косвенная адресация или разыменование указателя
- •3) Увеличение или уменьшение значения указателя на целое число
- •4) Разность указателей
- •5) Сравнение указателей
- •6) Присваивание указателей друг другу
- •4.6. Связь между указателями и массивами
- •4.7. Динамическое распределение памяти
- •4.8. Массивы указателей
- •5. Функции
- •5.1. Общие сведения
- •5.2. Область видимости переменных
- •5.2.1. Локальные переменные
- •5.2.2. Глобальные переменные
- •5.3. Передача параметров в функцию
- •5.4. Рекурсивные функции
- •5.5. Использование функций в качестве параметров функций
- •5.6. Указатели на функции
- •5.7. Структура программы на Си
- •5.8. Передача параметров в функцию main()
- •6. Строки
- •7. Классы хранения и видимость переменных
- •7.1. Общие сведения
- •7.2. Автоматический класс хранения (auto)
- •7.3. Регистровый класс хранения (register)
- •7.4. Статический класс хранения (static)
- •7.5. Внешний класс хранения (extern)
- •7.6. Заключение
- •8. Структуры, объединения и перечисления
- •8.1. Общие сведения
- •8.2. Инициализация структурных переменных
- •8.3. Вложенные структуры
- •8.4. Указатели на структуры
- •8.5. Массивы структурных переменных
- •8.6. Передача функциям структурных переменных
- •8.7. Оператор typedef
- •8.8. Поля битов в структурах
- •8.9. Объединения
- •8.10. Перечисления
- •9. Динамические структуры данных
- •9.1. Общие сведения
- •9.2. Связные списки
- •9.2.1. Односвязные списки
- •9.2.2. Двусвязные списки
- •9.2.3. Циклические списки
- •9.3. Стеки
- •9.4. Очереди
- •9.5. Деревья
- •9.5.1. Понятие графа
- •9.5.2. Бинарные деревья
- •10. Файлы
- •10.1. Общие сведения
- •10.2. Открытие и закрытие файлов
- •10.3. Функции ввода-вывода для работы с текстовыми файлами
- •10.4. Произвольный доступ к файлу
- •10.5. Функции ввода-вывода для работы с бинарными файлами
- •11. Директивы препроцессора
- •11.1. Основные понятия
- •11.2. Директива #include
- •11.3. Директивы препроцессора #define и #undef
- •11.3.1. Символические константы
- •11.3.2. Макросы с параметрами
- •11.3.3. Директива #undef
- •11.4. Условная компиляция
- •11.5. Директивы # и ##
- •12. Модульное программирование
- •13. Введение в объектно-ориентированное программирование
- •13.1. Постановка задачи
- •13.2. Решение задачи средствами Си
- •13.5. Наследование
- •13.6. Перегрузка
- •13.7. Ссылочный тип
- •Литература
- •Приложение 1. Рекомендации по оформлению текстов программ
- •Тесты к теоретическому разделу Вопросы к разделу 1. Основные типы данных
- •Вопросы к разделу 2. Операции и выражения
- •Вопросы к разделу 3. Операторы управления вычислительным процессом
- •Вопросы к разделу 4. Массивы и указатели
- •Вопросы к разделу 5. Функции
- •Вопросы к разделу 6. Строки
- •Вопросы к разделу 7. Классы хранения и видимость переменных
- •Вопросы к разделу 8. Структуры, объединения и перечисления
- •Вопросы к разделу 9. Динамические структуры данных
- •Вопросы к разделу 10. Файлы
- •Вопросы к разделу 11. Директивы препроцессора
- •Вопросы к разделу 12. Модульное программирование
- •Вопросы к разделу 13. Введение в ооп
- •Правильные ответы на вопросы тестов к теоретическому разделу
- •Вопросы к теоретическому зачету
- •Варианты индивидуальных заданий
- •Контрольная работа №2
- •Варианты индивидуальных заданий
- •Индивидуальные практические работы Указания к выбору варианта индивидуальных практических работ
- •Индивидуальная практическая работа № 1. Массивы и строки
- •Варианты индивидуальных заданий
- •Индивидуальная практическая работа № 2. Динамические структуры данных
- •Варианты индивидуальных заданий
Рабочая учебная программа
Учреждение образования
«Белорусский государственный университет
Информатики и радиоэлектроники»
УТВЕРЖДАЮ
Декан факультета НиДО
________ В.М. Бондарик
«___»____________ 2010 г.
Регистрационный № УД-______/р.
ЯЗЫКИ ПРОГРАММИРОВАНИЯ
Рабочая учебная программа для специальности:
I-40 01 01 Программное обеспечение информационных технологий
Факультет заочного, вечернего и дистанционного обучения
Кафедра Программное обеспечение информационных технологий
Курс (курсы) 2
Часть (части) 1, 2
индивидуальные практические
(виртуальные) занятия – Экзамен_1 (Ч.2) 2 (курс)
2 (Ч.1), 2 (Ч.2) (количество работ) Зачет 1 (Ч.1) 2 (курс)
Курсовой проект
_3_(Ч.2)_____(курс)
Контрольные работы_2 (Ч.1), 1 (Ч.2)__(количество работ)
Всего часов Форма получения
по дисциплине__304__ высшего образования дистанционная
в том числе: часть 1 __120__
Часть 2 __184__
2010
Составил Бахтизин Вячеслав Вениаминович, заведующий кафедрой программного обеспечения информационных технологий, к.т.н., доцент
Учебная программа составлена на основе типовой учебной программы «Языки программирования», утвержденной Министерством образования Республики Беларусь 03.06.08 г., регистрационный № ТД–I.049/тип и учебного плана специальности 1-40 01 01 «Программное обеспечение информационных технологий» (дистанционная форма получения высшего образования для студентов набора, начиная с 2007 года).
Рассмотрена и рекомендована к утверждению на заседании кафедры программного обеспечения информационных технологий
протокол № ___ от «___» __________ 20___ г.
Заведующий кафедрой ____________________ (В.В.Бахтизин)
Одобрена и рекомендована к утверждению Методической комиссией факультета Компьютерные системы и сети Учреждения образования «Белорусский государственный университет информатики и радиоэлектроники»
протокол № ___ от «___» __________ 20___ г.
Председатель _______________ (М.М. Лукашевич)
СОГЛАСОВАНО
Начальник ОМОУП Ц.С. Шикова
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА
Цель преподавания дисциплины. Целью дисциплины является подготовка специалиста, владеющего фундаментальными знаниями языков программирования.
Задачи изучения дисциплины.
В результате лекционных, индивидуальных практических и самостоятельных занятий в рамках предложенной программы студент должен:
– понимать концепции, положенные в основу современных языков программирования;
– обладать навыками необходимыми для изучения новых языков программирования;
– иметь опыт разработки, тестирования, отладки и документирования программ с использованием современных инструментальных средств.
В результате изучения дисциплины студенты должны:
знать:
синтаксис и семантику языка высокого уровня (Си);
синтаксис и семантику машинно-ориентированного языка низкого уровня (Ассемблер);
уметь:
программировать на языках программирования высокого и низкого уровня (Си и Ассемблер);
исследовать исходный и исполняемый код программ, написанных на языках программирования высокого и низкого уровня;
выполнять отладку и тестирование программ, написанных на языках программирования высокого и низкого уровня.
Перечень дисциплин, усвоение которых необходимо для изучения данной дисциплины.
№ пп |
Название дисциплины |
Раздел, тема |
1 |
Основы алгоритмизации и программирования |
Основы алгоритмизации |
