- •Нижегородский государственный университет им. Н.И. Лобачевского (ннгу)
- •Учебно-методическое пособие по курсу «программирование (язык си)»
- •1. Содержательное описание курса
- •1.1. Цели освоения дисциплины
- •1.2. Место дисциплины в структуре основных образовательных программ
- •1.3 Формирование компетенций
- •1.4 Требования к результатам освоения дисциплины «Программирование (с)»
- •2. Структура курса «Программирование (с)»
- •2.1 Плановая нагрузка
- •2.2. Содержание разделов дисциплины
- •10. Типы, определяемые пользователем.
- •3. Лабораторный практикум
- •3.1. Общие положения о выполнении лабораторных работ
- •3.2. Тематические задания по курсу «Программирование (язык си).
- •If (условие) оператор;
- •& Конъюнкция (логическое и)
- •| Дизъюнкция (логическое или)
- •1. Массивы символов.
- •2. Числовые массивы.
- •1. Передача параметров в функции.
- •2. Рекурсивные функции.
- •3.3. Рекомендации по выполнению лабораторных работ
- •Задача Джонсона. Обработки n деталей на 2 станках.
- •Модификация задачи Джонсона.
- •4. Учебно-методическое обеспечение самостоятельной работы студентов.
- •4.1. Вопросы для контроля
- •4.2. Критерии оценок
- •4.3. Учебно-методическое и информационное обеспечение дисциплины «Программирование (с)»
- •Оглавление
- •Учебно-методическое пособие по курсу «программирование (язык си)»
- •603950, Нижний Новгород, пр. Гагарина, 23.
4. Учебно-методическое обеспечение самостоятельной работы студентов.
4.1. Вопросы для контроля
Структура и конструкция программы на языке СИ: используемые символы, константы, идентификаторы, ключевые слова, комментарии
Типы данных и их об явление. Использование sizeof. Константы и переменные. Правила области видимости.
Явное и неявное преобразование типов.
Выражения и операции присваивания. Простое присваивание. Составное присваивание.
Операции увеличения и уменьшения
Инициализация данных: переменных, массивов, структур.
Операции языка СИ. Мультипликативные операции. Аддитивные операции Приоритеты операций и порядок вычислений
Операции языка СИ: арифметические, логические, присваивания, сравнения, тернарная, sizeof.
Операторы управления программой: IF, SWITCH.
Операнды и операции. Преобразования при вычислении выражений. Простые и составные операнды.
Циклы с предусловием и постусловием.
Вложенные циклы. Операторы прерывания цикла - continue, break.
Одномерные и многомерные массивы. Методы доступа к элементам массивов. Использование sizeof.
Строки. Функции работы со строками.
Указатели и массивы. Массивы указателей. Указатели на многомерные массивы
Указатели и адресная арифметика. Операции с указателями. Модели памяти.
Динамическое распределение памяти. Динамическое размещение массивов.
Определяемые пользователем типы данных. Структуры.
Массивы структур Указатели на структуры.
Определяемые пользователем типы данных. Битовые поля.
Общий формат функций. Прототипы функций. Вызов функций.
Оператор return. Значения, возвращаемые функцией.
Функции. Передача массивов и структур в функции.
Форматированный ввод и вывод.
Консольный ввод и вывод.
Потоки и файлы. Связь потоков и файлов.
Ввод/вывод с произвольным доступом.
Функции работы с файлами для ввода символов, строк, чисел.
4.2. Критерии оценок
Зачтено |
Выполнены все лабораторные работы. Обоснование программы чётко структурировано, изложено в терминах дисциплины. Могут быть допущены незначительные ошибки или недочеты, исправленные студентом с помощью «наводящих» вопросов преподавателя. |
Не зачтено |
Выполнены не все лабораторные работы. Студент не может пояснить алгоритм или объяснить основные алгоритмические конструкции. Дополнительные и уточняющие вопросы преподавателя не приводят к коррекции ответа студента не только на поставленный вопрос, но и на другие вопросы дисциплины. |
4.3. Учебно-методическое и информационное обеспечение дисциплины «Программирование (с)»
а) основная литература
1. Березин Б.И., Березин С.Б. Начальный курс С и С++. М: Диалог-Мифи, 2000. – 288 c.
2. Громов Ю.Ю., Татаренко С.И. Программирование на языке Си http://citforum.ru/programming/c.shtml.
3. Керниган Б., Ритчи Д., Фьюзер А. Язык программирования Си. Задачи по языку Си: Пер. с англ. М.: Финансы и статистика, 1992. – 272 с.
4. Павловская. Т. А. C/C++. Программирование на языке высокого уровня / СПб.: Питер, 2003. —461 с.: ил.
5. Подбельский В.В., Фомин С.С. Программирование на языке Си. М.: Финансы и статистика, 2000. – 600 с.
6. Страуструп Б. Язык программирования Си++: Пер. с англ. М.: Радио и связь, 1991.- 352 с.
7. Тарасов В.Л. Упражнения по языку программирования Си. Учебное пособие. Н.Н.: Нижегородский университет, 1996.
8. Трой. Д. Программирование на языке Си для персонального компьютера IBM PC: Пер. с англ. М.: Радио и связь, 1991.
9. Хенкок Л., Кригер М. Введение в программирование на языке Си: Пер. с англ. М.: Радио и связь, 1986.
10. Чернышова Н.Н., Фомина И.А. Методические указания для выполнения лабораторных работ по курсам “Основы алгоритмизации” и "Язык СИ" для студентов специальности «Информационные системы". ННГУ, факультет вычислительной математики и кибернетики, кафедра “Информатики и автоматизации научных исследований”, Н.Новгород, 2000г.
11. Франка П. С++: учебный курс. - СПб.: Питер, 2001. - 528 с.: ил.
12. Фомина И.А. Методические указания по курсу «Язык программирования СИ» (темы: «Указатели», «Массивы», «Функции»). Фонд образовательных электронных ресурсов Нижегородского государственного университета. Регистрационный номер 101.05.08. met_ci.doc. http://www.unn.ru/books/resources.html, 2005
13. Шилдт, Герберт. Полный справочник по С, 4-е издание. : Пер. с англ. - М,: Издательский дом "Вильямс", 2002. - 704 с. : ил. - Парал.т ит. англ.
б) дополнительная литература
1. Бондарев В.М., Рублинецкий В.И., Качко Е.Г. Основы программирования. — Харьков: Фолио, Ростов н/Д: Феникс, 1997. — 368 с.
2. Вирт Н. Алгоритмы и структуры данных. — М.: Мир, 1989.
3. Вирт Н. Алгоритмы + структура данных = программы. — М.: Мир, 1985.
4. Керниган Б., Пайк Р. Практика программирования/ Пер. с англ. – СПб.: Невский диалект, 2001. – 381 с.
5. Окулов С.М. Основы программирования. — М.: ЮНИМЕДИАСТАЙЛ, 2002. — 424 с.
Материально-техническое обеспечение дисциплины (модуля) «Программирование (С)». Использование терминал - класса для выполнения лабораторных и самостоятельных работ (в стандартной комплектации). Программное обеспечение: интегрированная среда программирования Microsoft Visual Studio.
