Турбо Си

Важной вехой в развитии программирования
явилось создание и широкое распространение языка С++. Этот язык, сохранив
средства ставшего общепризнанным стандартом для написания системных и прикладных
программ языка С (процедурно-ориентированный язык), ввел в практику
программирования возможности нового технологического подхода к разработке
программного обеспечения, получившего название "объектно-ориентированное
программирование". Внедрение в практику программирования объектно-
ориентированной парадигмы дает развитие новых областей информатики, значительное
повышение уровня технологичности создаваемых программных средств, сокращение
затрат на разработку и сопровождение программ, их повторное использование,
вовлечение в процесс расширения интеллектуальных возможностей ЭВМ. Объектный
подход информационного моделирования предметных областей все более успешно
применяется в качестве основы для структуризации их информационных отражений и,
в частности , баз знаний. С++ - это язык программирования общего назначения,
хорошо известный своей эффективностью, экономичностью, и переносимостью.
Указанные преимущества С++ обеспечивают хорошее качество разработки почти любого
вида программного продукта. Использование С++ в качестве инструментального языка
позволяет получать быстрые и компактные программы. Во многих случаях программы,
написанные на С++, сравнимы по скорости с программами, написанными на языке
ассемблера. - С++
обеспечивает полный набор операторов структурного программирования; - С++
предлагает необычно большой набор операций. Многие операции С++ соответствуют
машинным командам и поэтому допускают прямую трансляцию в машинный код.
Разнообразие операций позволяет выбирать их различные наборы для минимизации
результирующего кода; С++ поддерживает указатели на переменные и функции.
Указатель на объект программы соответствует машинному адресу этого объекта.
Посредством разумного использования указателей можно создавать эффективно
выполняемые программы, т.к. указатели позволяют ссылаться на объекты тем же
самым путем, как это делает ЭВМ. С++ поддерживает арифметику указателей, и тем
самым позволяет осуществлять непосредственный доступ и манипуляции с адресами
памяти. Однако, следует отметить, что преимущества языка С++ становятся
очевидными при реализации больших программных проектов. Первые же шаги при
программировании на С++ требуют от студента тщательного проектирования
программы, а также определенной дисциплины при программировании. Первая часть
методических указаний для проведения лабораторных работ по дисциплине
"Алгоритмические языки программирования" включает примеры программ и задачи для
программирования, ориентированные в основном на изучение синтаксических
конструкций языка TURBO C++. Цель работы: Изучение интегрированной Среды разработки программ
TURBO C++. TURBO C++ упрощает процесс программирования и делает его более
эффективным. При работе в TURBO C++ весь комплекс инструментальных средств,
необходимых для написания, редактирования, компиляции, компоновки и отладки
программ, оказывается под рукой у пользователя. Кроме того,
Среда разработки программ TURBO C++ предоставляет следующие дополнительные
возможности, которые еще больше упрощают процесс написания
программ: Возможность отображения на экране монитора значительного числа окон
, которые можно перемещать по экрану и размеры которых можно изменять. Наличие команд удаления и вставки
(при этом допускается копирование из окна HELP и между окнами
EDIT). ИСР содержит три визуальных компоненты: строку
меню у верхнего края экрана, оконную область в средней части экрана и строку
состояния у нижнего края экрана. В результате выбора некоторых элементов меню на
экран будут выдаваться блоки диалога. Строка меню
представляет собой основное средство доступа ко всем командам меню. Строка меню
оказывается невидимой лишь во время просмотра информации , отображаемой
программой и во время перехода к другой программе. Большая
часть того, что видно и делается в среде TURBO C++ , происходит в окне. Окно -
это область экрана, которую можно перемещать , размеры которой можно перемещать,
изменять, которую можно распахивать на весь экран, ориентировать встык с другими
окнами. В TURBO C++ может существовать произвольное число окон, но в каждый
момент активно только одно окно. Активным является то окно, в котором в
настоящий момент происходит работа. Существует несколько типов
окон , но большая их часть имеет следующие общие элементы: угол изменения размера окна; Строка состояния, расположенная у нижнего края экрана, выполняет
следующие функции: Напоминает об основных клавишах и клавишах активизации,
которые в настоящий момент могут быть применены к активному окну. Позволяет
установить указатель мыши на обозначения клавиш и кратковременно нажать кнопку
мыши для выполнения указанного действия, вместо того, чтобы выбирать команды из
меню или нажимать соответствующие клавиши. Предлагает состоящие из одной строки советы и
рекомендации по любой выбранной команде меню и элементам блока диалога. Если за элементом меню располагается многоточие, то в результате
выбора данной команды будет открыт блок диалога , обеспечивающий удобный способ
просмотра и задания многочисленных параметров. При задании значения в блоке
диалога работа происходит с пятью базовыми типами средств управления:
указателями выбора, переключателями состояния, кнопками действия, блоками ввода
и блоками списка. Отображается у левого края строки меню. Для вызова следует
нажать ALT -пробел. При вызове этого меню отображаются команды: При выборе данной команды появляется блок диалога, в котором
содержится информация по авторским правам и номер версии TURBO C++. Данное окно
закрывается нажатием клавиши ESC или ENTER.
Закрывает все окна и стирает все списки предысторий. Эта команда полезна в тех
случаях, когда начинается работа над новым проектом. В этом подменю показаны имена всех программ, которые
установлены с помощью блока диалога Transfer, вызываемого командой
Options/Transfer. Для запуска программы необходимо выбрать ее имя из системного
меню. Это МЕНЮ позволяет открывать в окнах
EDIT и создавать исходные файлы программ, сохранять внесенные изменения,
выполнять другие действия над файлами ,выходить в оболочку DOS и завершать
работу с TURBO C++. Команда FILE OPEN отображает блок
диалога, в котором выбирается исходный файл программы, который будет открыт в
окне EDIT. Этот блок диалога содержит блок ввода, список файлов, и кнопки
OPEN, REPLACE, CANCEL и HELP, а также информационную панель. В результате выбора Open файл загружается в новое окно Edit.
Для выбора Replace должно иметься активное окно Edit; в результате выполнения
Replace содержимое окна заменяется выбранным файлом. Нажать , чтобы выбрать
спецификацию файла из списка предыстории, который содержит введенные ранее
спецификации файлов. Блок ввода позволяет явно ввести имя файла или
ввести имя файла с метасимволами DOS (* и ?). Если ввести имя полностью и нажать
Enter, Turbo C++ откроет указанный файл. (Если ввести имя файла, который система
Turbo C++ не может обнаружить, она автоматически создаст и откроет новый файл с
таким именем.) Если нажать ? , когда курсор находится в блоке ввода,. то под
этим блоком появляется список предыстории, содержащий последние восемь имен
файлов, которые были введены ранее. Команда File New
позволяет открывать новое окно Edit со стандартным именем NONAMExx. С (где
вместо букв хх задается число в диапазоне от 00 до 99). Файлы с именем NONAME
используются в качестве временного буфера для редактирования; когда файл с
подобным именем сохраняется на диске, Turbo C++ запрашивает действительное имя
файла. Команда File Save записывает на диск файл,
находящийся в активном окне Edit (если активно окно Edit в настоящий момент,
если нет, то данным элементом меню нельзя воспользоваться.) Если файл имеет
использованное по умолчанию имя (NONAMEOO.C и т.п.) TurboC++ откроет блок
диалога Save Editor File, который позволяет переименовать данный файл и
сохранять его в другом каталоге или на другом дисководе. Команда File Save As позволяет сохранить файл в активном окне Edit
под другим именем, в другом каталоге или на другом дисководе. Команда File Change Dir позволяет задать идентификатор и имя
каталога, которые следует сделать текущими. Текущим является тот каталог,
который используется в Turbo C++ для сохранения и поиска файлов. (При
использовании относительных маршрутов в Options Directories они задаются только
относительно текущего каталога). Команда File Print
печатает содержимое активного окна Edit Turbo C++ "раскрывает" символы табуляции
(заменяет их соответствующим числом пробелов), а затем посылает файл на
устройство печати, заданное в DOS. Данная команда будет "запрещена", если
содержимое активного окна не может быть выведено на печать. Для вывода на печать
только выделенного текста следует использовать Ctrl-K P. Команда File Get Info отображает блок, в котором содержится
информация относительно текущего файла. ЗНАЧЕНИЕ Имя каталога по
умолчанию Объем
дополнительной памяти, зарезервированной для Turbo C++ Объем расширенной
памяти, зарезервированной для Turbo C++ Program loaded Код возврата от последней завершившейся
программы Команда File DOS
Shell позволяет временно выйти из Turbo C++, чтобы выполнить команду DOS или
запустить программу. Для возврата в Turbo C++ необходимо ввести с клавиатуры
EXIT и нажать Enter. Иногда можно обнаружить, что во время отладки не хватает
памяти для выполнения этой команды. В этом случае необходимо завершить сеанс
отладки командой Run Program Reset (Ctrl-F2).
Команда File Quit осуществляет выход из системы Turbo C++, удаляет ее из памяти
и передает управление DOS. Если внесены изменения, которые еще не были
сохранены, то перед выходом Turbo C++ выдаст запрос на их
сохранение. Позволяет выполнять удаления,
копирование и вставку текста в окнах Edit. Можно также открыть окно текстового
буфера для просмотра или редактирования его содержимого. Выбрать текст это
значит выделить его цветом:
Затем переместить курсор в конец фрагмента текста и на жать После выделения фрагмента
текста становятся доступными команды, расположенные в меню Edit, и можно
использовать текстовый буфер (Clipboard).Он взаимодействует с командами меню
Edit: Эта команда отменяет действие последней
команды редактирования, примененной к какой-либо строке. Она действует только
над последней отредактированной строкой.
Удаляет выделенный фрагмент текста из документа и заносит его в текстовый буфер.
Затем можно вставить текст в другой документ путем выбора Paste. Эта команда не изменяет выделенный текст, но заносит в
текстовый буфер его точную копию. Затем можно вставить текст в другой документ
командой Paste. Можно скопировать текст из окна Help; следует использовать Shift
и клавиши управления курсором. Эта команда
вставляет текст из текстового буфера в текущее окно в позиции
курсора. Эта команда открывает окно Clipboard,
в котором хранятся фрагменты текста, удаленного и скопированного из других
окон. Эта команда удаляет выбранный фрагмент
текста ,но не заносит его в текстовый буфер. Это означает, что восстановить
удаленный текст нельзя. Меню Search
выполняет поиск текста, объявлений функций, а также местоположение ошибок в
файлах. Команда Search Find отображает блок диалога Find, который позволяет
ввести образец поиска и задать параметры, влияющие на процесс поиска. Эта
команда может быть также вызвана с помощью (Ctrl Q F). Команда Search Replace отображает блок диалога для ввода искомого
текста и текста, на который его следует заменить. Команда Search Again повторяет действие последней команды Find или
Replace. Все параметры, которые были заданы при последнем обращении к
использованному блоку диалога(Find или Replace), остаются действительными при
выборе данной команды. Команды этого меню
выполняют программу, а также инициализируют и завершают сеанс отладки. Команда Run выполняет программу, используя те
аргументы, которые переданы программе с помощью команды Run Arguments. Эта команда выполняет программу по операторам. По
достижению вызова функции будет выполняться каждый ее оператор вместо того,
чтобы выполнить эту функцию за один шаг. Этой командой следует пользоваться для
перемещения выполнения в функцию, которая вызывается из отлаживаемой
функции. Команда Run Program Reset
прекращает текущий сеанс отладки, освобождает память программы и закрывает все
открытые файлы, которые использовались в программе.
Команда Run Step Over выполняет следующий оператор в текущей функции без
вхождения в функции более низкого уровня, даже если эти функции доступны
отладчику. Командой Step Over следует пользоваться в случаях, когда необходимо
отладить функцию в пооператорном режиме выполнения без вхождения в другие
функции. Команда Run Arguments позволяет задать
выполняемой программе аргументы командной строки точно так же, как если бы они
вводились в командной строке DOS. Команды переназначения ввода/вывода DOS будут
игнорироваться. Команды из меню Compile используются
для компиляции программы в активном окне, а также для полной или избирательной
компиляции проекта: Link EXE File Только
при полном наборе меню Команда Compile Link EXE File использует
текущие OBJ и LIB-файлы и компонует их, не производя избирательной
компиляции. Команда Debug Inspect открывает окно Inspector, которому позволяет
проанализировать и модифицировать значения элемента данных. Меню Oрtions содержит команды, которые позволяют
просматривать и модифицировать стандартные параметры, определяющие
функционирование Turbo C++. Задание: Используя команды экранного меню File,
найти, открыть и переименовать какой-либо файл из каталога примеров пакета Turbo
C++. Какая команда позволяет сохранить на
диске файл, который находится в активном окне? Какая команда позволяет
распахивать на весь экран активное окно? Какая команда позволяет осуществлять циклическое перемещение от одного
открытого окна к следующему? Для чего служит команда
Inspect? Какая команда позволяет удалить текст из окна не
помещая его в текстовый буфер? Какая команда
позволяет заносить выбранный текст в текстовый буфер и удалять выбранный текст
из окна? Какая команда позволяет
осуществить переход к предыдущей ошибке? Какая команда позволяет выполнять программу? Для чего служит
команда DOS Shell? Какая команда позволяет регенерировать изображение на экране? Лабораторная работа 2 Цель
работы: Изучение структуры исполняемого файла, типов данных и операторов ввода-
вывода системы TURBO C++. Каждый исполняемый файл
системы (Турбо) Си (программа) должен содержать функцию main. main() Текст на (Турбо) Си, заключенный в скобки /* и */,
компилятором игнорируется. Комментарии служат двум целям: документировать код и
облегчить отладку. Если программа работает не так, как надо, то иногда
оказывается полезным закомментировать часть кода ( т.е. вынести ее в комментарий
) , заново скомпилировать программу и выполнить ее . Если после этого программа
начнет работать правильно, то значит, закомментированный код содержит ошибку и
должен быть исправлен . Во многие
программы на (Турбо) Си подставляются один или несколько файлов, часто в самое
начало кода главной функции main. приводит
к тому , что препроцессор подставляет на место этих директив тексты файлов
файл_1, файл_2 , ... , файл_n соответственно. Если имя файла заключено в
угловые скобки <...> , то поиск файла производится в специальном разделе
подстановочных файлов. В отличие от многих других операторов (Турбо) Си
директива Include не должна оканчиваться точкой с запятой . С помощью директивы #define, вслед за которой пишутся имя макро и значение
макро, оказывается возможным указать препроцессору, чтобы он при любом появлении
в исходном файле на (Турбо) Си данного имени макро заменял это имя на
соответствующие значения макро . связывает идентификатор pi со значением 3.1415926. После значения
макро (;) не ставится. В (Турбо) Си переменные
должны быть описаны, а их тип специфирован до того, как эти переменные будут
использованы. При описании переменных применяется префиксная запись , при
которой вначале указывается тип, а затем - имя переменной. С типом данных связываются и набор
предопределенных значений, и набор операций, которые можно выполнять над
переменной данного типа. float income =26034.12
; char Представляется как однобайтовое целое число double
Восьмибайтовое вещественное
Функцию printf можно использовать для вывода любой комбинации символов, целых и
вещественных чисел, строк, беззнаковых целых, длинных целых и беззнаковых
длинных целых. Предполагается, что целой переменной age (возраст) и
вещественной переменной income (доход) присвоены какие-то
значения. Последовательность символов "Возраст Эрика -" будет выведена с начала
новой строки. Символы %d - это спецификация для целой переменной age. Следующая
литерная строка " Его доход $ ". %2f - это спецификация ( символ преобразования
формата ) для вещественного значения, а также указание формата для вывода только
двух цифр после десятичной точки. Так выводится значение переменной income
Тип выводимого
объекта int ( в шестнадцатеричном виде ) unsigned long %e long float ( в экспоненциальной форме ) long float ( в виде f или е в
зависимости от значения ) Оператор scanf является одной из многих функций ввода,
имеющихся во внешних библиотеках. Каждой вводимой переменной в строке функции
scanf должна соответствовать спецификация. Перед именами переменных необходимо
оставить символ &. Этот символ означает "взять адрес". printf(" Введите ваш вес: "); printf("\n\nВес =
%d, рост = %d\n", Составить и распечатать
программу вывода на экран своих анкетных данных различного типа: - вводимых с
клавиатуры, Операторы и операции Основу языка (Турбо) Си составляют операторы. Оператором-
выражения называют выражение, вслед за которым стоит точка с запятой. В (Турбо)
Си точки с запятой используются для разделения операторов. Принято группировать
все операторы в следующие классы: присваивания, вызов функции, ветвления и
цикла. Действие такого оператора можно описать
следующими словами: " с присваивается значение а, умножение на b ". Значение,
присваиваемое переменной с, равняется произведению текущих значений переменных а
и b. if ( ( c = cube( a * b ) ) > d ) К понятию оператора вплотную примыкает понятие операции.
Различают следующие группы операций (Турбо) Си : арифметические операции,
операции отношения, операции присваивания, логические операции, побитовые
операции, операция вычисления размера (sizeof) и операция следования
(запятая). К арифметическим операциям
относятся: сложение (+), вычитание (-), деление (/) , умножение (*) и остаток
(%). Все операции (за исключением остатка) определены для переменных типа int ,
char , float. Остаток не определен для переменных типа float. Все арифметические
операции с плавающей точкой производятся над операндами двойной точности. В языке определены следующие операции
отношения: проверка на равенство (==), проверка на неравенство (!=), меньше
(<), меньше или равно (<=), больше (>), больше или равно (>=).
Все перечисленные операции вырабатывают результат типа int. Если данное
отношение между операндами истинно, то значение этого целого - единица, а если
ложно, то нуль. Все операции типа больше-меньше имеют равный приоритет, причем
он выше , чем приоритет операций == и !=. Приоритет операции присваивания ниже
приоритета всех операций отношений. Для задания правильного порядка вычислений
используются скобки. операции ИЛИ (or) Аргументами логических операций могут быть любые числа, включая
задаваемые аргументами типа char. Результат логической операции-единица, если
истина, и нуль, если ложь. Вообще все значения, отличные от нуля,
интерпретируются как истинные. Вычисление
выражений, содержащих логические операции, производится слева направо и
прекращается (усекается), как только удается определить результат. Если
выражение составлено из логических утверждений (т.е. выражения, вырабатывающие
значения типа int), соединенных между собой операцией И (&&), то
вычисление выражения прекращается, как только хотя бы в одном логическом
утверждении вырабатывается значение нуль. Если выражение составлено из
логических утверждений, соединенных между собой операцией ИЛИ (), то вычисление
выражения прекращается, как только хотя бы в одном логическом утверждении
вырабатывается ненулевое значение.
if( value1 < value2 && (value3 > 50 value4 < 20) ) К операциям присваивания относятся
=, +=, -=, *= и /=, а также префиксные и постфиксные операции ++ и --. Все
операции присваивания присваивают переменной результат вычисления выражения.
Если тип левой части присваивания отличается от типа правой части, то тип правой
части приводится к типу левой. В одном операторе операция присваивания может
встречаться несколько раз. Вычисления производятся справа налево.
Вначале переменной d присваивается
значение с, затем выполняется операция умножения на d, и результат присваивается
переменной а. Операции +=, -=, *= и /= являются укороченной формой записи
операции присваивания. Их применение проиллюстрируем при помощи следующего
описания: a /= b означает a = a / b. Префиксные и постфиксные
операции ++ и -- используют для увеличения (инкремент) и уменьшения (декремент)
на единицу значения переменной. ++a
увеличивает значение переменной а на единицу до использования этой переменной в
выражении. --a уменьшает значение переменной а
на единицу до использования этой переменной в выражении. Операцию sizeof (размер) можно применить к константе, типу или
переменной. В результате будет получено число байтов, занимаемых операндом. printf
( "\nРазмер памяти под cимвол %d", sizeof( сhar) ); Задание: Cоставить и
распечатать программу, использующую оператор присваивания, арифметические
операции и операцию sizeof. Цель работы: Изучение логической организации программы и простейшее
использование функций в Турбо Си. Процесс разработки программного обеспечения
предполагает разделение сложной задачи на набор более простых задач и заданий. В
(Турбо) Си поддерживаются функции как логические единицы (блоки текста
программы) , служащие для выполнения конкретного задания.
Функции имеют нуль или более формальных параметров и возвращают значение
скалярного типа, типа void (пусто) или указатель. При вызове функции значения,
задаваемые на входе, должны соответствовать числу и типу формальных параметров в
описании функции. Если функция не возвращает значения (т.е. возвращает void), то
она служит для того, чтобы изменять свои параметры (вызывать побочный эффект)
или глобальные для функции переменные. return x * x * x
; Аргумент х типа double специфицируется вслед за первой открывающей
скобкой. Описание extern , помещаемое в функцию main , является ссылкой вперед ,
позволяющей использовать функцию cube в функции main. Ключевое слово extern
можно опускать, но сама ссылка вперед на описание функции является обязательной.
(Турбо) Си предоставляет необычайно высокую гибкость для физической организации
программы или программной системы. /* Заголовки и комментарии, описывающие
программу */ #define макро_1 значение_1
тип_данных глобальная_переменная_1; /* описание extern, обеспечивающие
ссылку вперед на функции и используемые в теле функции main */
тип_данных локальная_переменная_m; Тип_данных имя_функции_1(
формальные параметры ) /* Описание локальных
переменных */ ... /* Описание extern,
обеспечивающая ссылку вперед на функции и используемые в теле данной функции n
*/ тип_данных локальная_переменная_r; Cтруктура каждой функции совпадает со
структурой главной программы (main). Поэтому функции иногда еще называют
подпрограммами. Задание: Составить и распечатать программу, вычисляющую кубы
чисел, заданных разными способами. Цель работы: Изучение
использования констант различных типов в Турбо Си. В языке (Турбо) Си имеются
четыре типа констант: целые, вещественные (с плавающей точкой), символьные и
строковые. Константыцелого типа могут
задаваться в десятичной, двоичной, восьмеричной или шестнадцатеричной системах
счисления. Восьмеричные константы всегда начинаются с цифры нуль, вслед
за которой либо не стоит ни одной цифры, либо стоят несколько цифр от нуля до
семерки. Шестнадцатеричные константы всегда начинаются с цифры нуль и символа
х или Х, все, за которыми может стоять одна или более шестнадцатеричных цифр.
Шестнадцатеричные цифры - это десятичные цифры от 0 до 9 и латинские буквы:
a, b, c, d, e, f, или A, B, C, D, E, F. b =
06626, К любой целой константе можно справа приписать символ l
или L, и это будет означать, что константа - длинная целая (long integer).
Символ u или U, приписанный к константе справа, указывает на то, что константа
целая без знака (unsigned long). Считается, что значение любой целой
константы всегда неотрицательно. Если константе предшествует знак минус, то он
трактуется как операция смены знака, а не как часть константы. Константы с плавающей точкой (называемые
вещественными) состоят из цифр, десятичной точки и знаков десятичного порядка е
или Е. Ниже приведены все возможные варианты записи констант вещественного
типа: Cимвольные константы заключаются в
апострофы (кавычки). Все символьные константы имеют в (Турбо) Си значение типа
int (целое), совпадающее с кодом символа в кодировке ASCII. Одни символьные
константы соответствуют символам, которые можно вывести на печать, другие -
управляющим символам, задаваемым с помощью esc - последовательности, третьи -
форматирующими символами, также задаваемым с помощью esc - последовательности.
строку - как '\', а обратный слэш - как '\\'. \n Новая строка \f Прогон
бумаги до конца страницы \ddd Код символа в
ASCII от одной до трех восьмеричных цифр Строковые
константы состоят из нуля или более символов, заключенных в двойные кавычки. В
строковых константах управляющие коды задаются с помощью esc -
последовательности. Обратный слэш используется как символ переноса текста на
новую строку. str1=" Пример
использования\n\n"; Задание:
Написать и распечатать программу, выводящую на экран строковую константу и
число, состоящее из цифр вашего дня рождения, заданное в виде десятичной,
восьмеричной и шестнадцатеричной константы. Цель работы: Изучение приемов
использования операторов ветвления и операторов циклов в Турбо
Си. Управляющие структуры или операторы управления служат для управления
последовательностью вычислений в программе. Операторы ветвления и циклы
позволяют переходить к выполнению другой части программы или выполнять какую-то
часть программы многократно, пока удовлетворяется одно или более условий
. Любая последовательность операторов,
заключенная в фигурные скобки, является составным оператором(блоком). Составной
оператор не должен заканчиваться (;), поскольку ограничителем блока служит сама
закрывающаяся скобка. Внутри блока каждый оператор должен ограничиваться
(;). Пустой оператор. Пустой
оператор представляется символом (;), перед которым нет выражения. Пустой
оператор используют там, где синтаксис языка требует присутствия в данном месте
программы оператора, однако по логике программы оператор должен
отсутствовать. Необходимость в использовании пустого оператора часто
возникает, когда действия, которые могут быть выполнены в теле цикла, целиком
помещаются в заголовке цикла. К операторам
ветвления относятся if, if else, ?,switch и go to. Общий вид операторов
ветвления следующий: if (логическое
выражение) <логическое выражение> ?
<выражение_1> : <выражение_2>; Если значение логического выражения
истинно, то вычисляется выражение_1, в противном случае вычисляется
выражение_2. case
значение_1: case
значение_n: Ветку default можно не описывать. Она выполняется,
если ни одно из вышестоящих выражений не удовлетворено. В Турбо
Си имеются следующие конструкции, позволяющие программировать циклы: while, do
while и for. Их структуру можно описать следующим образом: -------------------
------------------------------------------- ---------------------
----------------------------------------- --------------------------------------------------
-------------- Составить и получить распечатку программы
выбора всех нечетных чисел от 1 до 1000. Составить и получить распечатку программы выбора всех чисел, заканчивающихся
на цифру 2, от 1 до 1000. Составить и получить
распечатку программы выбора всех чисел, заканчивающихся на цифру 4, от 1 до
1000. Цель работы:
Изучение приемов объявления и обращения к массивам, использования функций и
директивы define при работе с массивами. Массивы - это набор объектов
одинакового типа, доступ к которым осуществляется прямо по индексу в массиве.
Обращение к массивам в (Турбо) Си осуществляется и с помощью указателей . Используя имя массива и индекс, можно адресоваться к элементам
массива: Значения индекса должны лежать в
диапазоне от нуля до величины, на единицу меньшей, чем размер массива, указанный
при его описании. double measurements [ 1500
]; Первый из массивов ( name ) содержит 20 символов. Обращением к
элементам массива может быть name [0], name [1], ...,name[19]. Второй массив
( grades ) содержит 125 целых чисел. Обращением к элементам массива может быть
grades [0],grades [1],...,grades[124]. Третий массив ( incom ) содержит 30
вещественных чисел. Обращением к элементам массива может быть income [0],
incom[1],...,income[29]. Четвертый массив (measurements ) содержит 1500
вещественных чисел с двойной точностью. Обращением к элементам массива может
быть measurements[0],measurements[1],...,measurements[1499]. #define size 1000 for ( i=0; i<size ; i++_) float average (int a[ ] ,int s ) В
программе заводится массив на 1000 целых чисел. При помощи функции average
подсчитывается сумма элементов этого массива. Первым формальным параметром
функции average является массив. В качестве второго параметра функции передается
число суммируемых значений в массиве a. Обратите внимание на использование
константы size (размер). Если изменяется размерность массива, задаваемая этой
константой, то это не приводит к необходимости менять что-либо в самом коде
программы. Составить и распечатать программу, решающую задачу
вычисления максимального и минимального значений с использованием функций max и
min. В качестве входных значений для указанных функций задаются массив чисел с
плавающей точкой и размер такого массива.