Управляющие структуры (Турбо) Си
(2 часа) Цель работы: Изучение приемов использования операторов ветвления и операторов циклов в Турбо Си. Управляющие структуры или операторы управления служат для управления последовательностью вычислений в программе. Операторы ветвления и циклы позволяют переходить к выполнению другой части программы или выполнять какую-то часть программы многократно, пока удовлетворяется одно или более условий. Блоки и составные операторы. Любая последовательность операторов, заключенная в фигурные скобки, является составным оператором(блоком). Составной оператор не должен заканчиваться (;), поскольку ограничителем блока служит сама закрывающаяся скобка. Внутри блока каждый оператор должен ограничиваться (;). Составной оператор может использоваться везде, где синтаксис языка допускает применение обычного оператора. Пустой оператор. Пустой оператор представляется символом (;), перед которым нет выражения. Пустой оператор используют там, где синтаксис языка требует присутствия в данном месте программы оператора, однако по логике программы оператор должен отсутствовать. Необходимость в использовании пустого оператора часто возникает, когда действия, которые могут быть выполнены в теле цикла, целиком помещаются в заголовке цикла. Операторы ветвления. К операторам ветвления относятся if, if else,?,switch и go to. Общий вид операторов ветвления следующий: if (логическое выражение) оператор; ------------------------------------------------------------------- if (логическое выражение) оператор_1; else оператор_2; ------------------------------------------------------------------- <логическое выражение>? <выражение_1>: <выражение_2>; Если значение логического выражения истинно, то вычисляется выражение_1, в противном случае вычисляется выражение_2.
------------------------------------------------------------------- switch (выражение целого типа) { case значение_1: последовательность_операторов_1; break; case значение_2: последовательность_операторов_2; break; ... case значение_n: последовательность_операторов_n; break; default: последовательность_операторов_n+1; } Ветку default можно не описывать. Она выполняется, если ни одно из вышестоящих выражений не удовлетворено. ------------------------------------------------------------------- Оператор цикла. В Турбо Си имеются следующие конструкции, позволяющие программировать циклы: while, do while и for. Их структуру можно описать следующим образом: while(логическое выражение) оператор; Цикл с проверкой условия наверху -------------------------------------------------------------- do оператор; while (логическое выражение); Цикл с проверкой условия внизу -------------------------------------------------------------- for (инициализация, проверка, новое_значение) оператор; ----------------------------------------------------------------
Задание: Составить и получить распечатку программы выбора всех четных чисел от 1 до 1000. Составить и получить распечатку программы выбора всех нечетных чисел от 1 до 1000. Составить и получить распечатку программы выбора всех чисел, заканчивающихся на цифру 5, от 1 до 1000. Составить и получить распечатку программы выбора всех чисел, заканчивающихся на цифру 2, от 1 до 1000. Составить и получить распечатку программы выбора всех чисел, заканчивающихся на цифру 3, от 1 до 1000. Составить и получить распечатку программы выбора всех чисел, заканчивающихся на цифру 4, от 1 до 1000. Лабораторная работа 7 Массивы в ТС++ (2 часа) Цель работы: Изучение приемов объявления и обращения к массивам, использования функций и директивы define при работе с массивами. Массивы - это набор объектов одинакового типа, доступ к которым осуществляется прямо по индексу в массиве. Обращение к массивам в (Турбо) Си осуществляется и с помощью указателей.
Массивы можно описывать следующим образом: тип_данных имя_массива [ размер массива ];
Используя имя массива и индекс, можно адресоваться к элементам массива: имя_массива [ значение индекса ] Значения индекса должны лежать в диапазоне от нуля до величины, на единицу меньшей, чем размер массива, указанный при его описании. Вот несколько примеров описания массивов: char name [ 20 ]; int grades [ 125 ]; float income [ 30 ]; 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]. /* Программа, иллюстрирующая использование массивов */ /*Файл array.с*/
#include <stdio.h> #define size 1000 int data [size]; main () { extern float average (int a[ ], int s); int i; for (i=0; i<size; i++_) data [ i ]= i; printf (“\nСреднее значение массива data =%f\n”,average (data,size)); } float average (int a[ ],int s) { float sum=0.0; int i; for (i=0; i<s; i ++) sum+=a[ i ]; return sum/s; } В программе заводится массив на 1000 целых чисел. При помощи функции average подсчитывается сумма элементов этого массива. Первым формальным параметром функции average является массив. В качестве второго параметра функции передается число суммируемых значений в массиве a. Обратите внимание на использование константы size (размер). Если изменяется размерность массива, задаваемая этой константой, то это не приводит к необходимости менять что-либо в самом коде программы.
Задание: Составить и распечатать программу, решающую задачу вычисления максимального и минимального значений с использованием функций max и min. В качестве входных значений для указанных функций задаются массив чисел с плавающей точкой и размер такого массива.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|