- •Антонюк в.А., Задорожный с.С.
- •Первая программа на с. История языка программирования с.
- •Среда программирования «Microsoft Visual Studio.Net».
- •Структура программы.
- •Пример простейшей программы:
- •Представление данных.
- •Операции.
- •Ввод и вывод алфавитно-цифровой информации.
- •Математические функции.
- •Практическое задание №1.
- •Условия в вычислениях. Ветвящиеся и итерационные алгоритмы Условная операция присваивания. Операторы if ... Else и switch.
- •Ветвящиеся алгоритмы.
- •Циклические и рекурсивные алгоритмы. Операторы циклов for, do, while.
- •Практическое задание №2.
- •Функции.
- •Определение функции.
- •Прототипы функций.
- •Вызов по значению и вызов по ссылке.
- •Вычисление функций путем разложения в ряд.
- •Поиск корней функции методом деления отрезка пополам.
- •Поиск корней функции методом касательных.
- •Практическое задание №3.
- •Массивы и указатели. Работа с файлами. Объявления массивов и указателей.
- •Доступ к элементам массива.
- •Передача массивов функциям.
- •Указатели.
- •Динамическое выделение и освобождение памяти.
- •Практическое задание.
- •Потоковые функции.
- •Низкоуровневый ввод и вывод.
- •Ввод и вывод символов, строк, слов.
- •Форматированный ввод и вывод.
- •Потоки cin, cout, cerr.
- •Практическое задание №4.
- •Структуры и объединения. Синтаксис структур.
- •Доступ к элементам структуры.
- •Передача структур в функции.
- •Структуры и битовые поля.
- •Объединения.
- •Дополнительные средства (typedef и enum).
- •Введение в объектно-ориентированное программирование. Принципы объектно-ориентированного программирования.
- •Терминология объектно-ориентированного программирования.
- •Структура как простейший класс.
- •Inline методы.
- •Указатель this.
- •Конструкторы и деструкторы.
- •Перегрузка методов класса.
- •Перегрузка операций.
- •Практическое задание.
- •Производные классы. Полиморфизм
- •Виртуальные функции
- •Использование дружественных функций.
- •Практическое задание.
- •Работа в объектно-ориентированной среде.
- •Объектно-ориентированные стековые операции.
- •Объектно-ориентированные связанные списки.
- •Практическое задание.
- •Классы iostream.
- •Потоковый ввод-вывод.
- •Буферизованные потоки.
- •Строковые потоки.
- •Двоичные файлы.
- •Вычисления в интерактивном режиме.
- •Графика в системе matlab.
- •3. Программирование m-функций.
- •4. Создание законченных приложений на основе графического интерфейса пользователя.
- •4. Создание законченных приложений на основе графического интерфейса пользователя.
- •Глава 7. Дополнительные возможности системы matlab Объекты и классы. Переопределение операций.
- •Написание расширений matlab на языке c
- •Программные интерфейсы
- •Настройка среды для сборки проекта
- •Пример программы
- •Вызов команд среды matlab из mex-файла
Практическое задание №1.
При выполнении этого задания студенты должны изучить и применить на практике приемы работы с основными структурами языка C : базовые типы данных, математические операции в C, вызов математических функций, включение библиотек и директива #include . Студенты также должны изучить стандартные функции ввода‑вывода на консоль, применить их для построения простейших интерфейсов к своим программам.
Для операций консольного ввода‑вывода используются функции библиотеки stdio.h ( printf и scanf ), для вычисления математических функций — библиотека math.h ( функции fabs, exp, log, sin, cos и т.д. ).
Напишите программу для вычисления нижеследующих выражений. Создайте интерфейс для ввода значений переменных с клавиатуры и вывода результата на экран монитора. x - целое ,a - целое , y - действительное.
-
Условия в вычислениях. Ветвящиеся и итерационные алгоритмы Условная операция присваивания. Операторы if ... Else и switch.
Операция имеет следующий вид
условие?выражение_если_истина:выражение_если_ложь
Если условие истинно, то результатом операции является выражение_если_истина. В противном случае, результатом является выражение_если_ложь.
Для формирования условий используются операции отношения и логические операции. Они дают нулевой результат, если результат сравнения Ложь (false) и ненулевой результат, если результат сравнения Истина (true).
Операции отношения: = = - равно (не путать с операцией присваивания), != - не равно, > - больше, < - меньше, >= больше или равно, <= - меньше или равно.
Несколько условий могут быть объединены с помощью логических операций И (&&), ИЛИ ( | | ). Также можно использовать логическую операцию НЕ (!).
Оператор if используется для условного выполнения фрагмента кода. Простейший его вид:
if(условное выражение)
действие_если_истина;
Условное выражение обязательно заключается в круглые скобки. Если оно истинно, то выполняется действие_если_истина. В противном случае, оно пропускается. В случае, если необходимо выполнить несколько операторов, то они заключаются в фигурные скобки и образуют блок:
if(условное выражение) { действие_если_истина1; действие_если_истина2; действие_если_истина3; … }
Оператор if - else используется тогда, когда необходимо выполнить разные действия для истинного и для ложного случаев:
if(условное выражение)
действие_если_истина;
else
действие_если_ложь;
Допустимо использование блоков:
if(условное выражение)
{
действие_если_истина1;
действие_если_истина2;
действие_если_истина3; …
}else
{
действие_если_ложь1;
действие_если_ложь2;
действие_если_ложь3;
…
}
Обратите внимание, что между } и else нет точки с запятой! Рекомендуется всегда использовать такой вид условного оператора, даже если внутри блока находится только один оператор. Это улучшает читабельность программы и, кроме того, устраняет неоднозначности вложенных операторов if - else.
Оператор switch используется, если необходимо сравнить некоторую переменную с несколькими значениями. Его синтаксис:
switch (выражение)
{
case константа1:
операторы1;
break;
case константа2:
операторы2;
break;
…
default:
операторы;
}
Работает оператор следующим образом. Вычисляется значение выражения. Если оно равно одной из констант, указанных после case, то выполняются операторы, следующие за этой константой. Оператор break; заканчивает выполнение всего оператора. Операторы, записанные после default, выполняются в случае, если значение выражения не совпало ни с одной из констант.