Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

Операторы цикла в языке программирования Си

Работа добавлена на сайт samzan.net:

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 28.11.2024

red0;

Лабораторная работа

"Операторы цикла в языке программирования Си++"


Цель работы:
 ознакомиться с циклическими алгоритмами и операторами, реализующими эти алгоритмы. Освоить особенности применения каждого оператора. Составить программы с использованием всех операторов цикла.

1. Теоретические сведения

Оператор цикла while

Описание: while (выражение) оператор;

Действие:

Выполняется оператор до тех пор, пока значение выражения в скобках истинно. Проверка значения выражения происходит перед каждым выполнением оператора. Когда значение выражения ложно, цикл while заканчивается. Если выражение ложно с самого начала, оператор не выполняется ни разу.

Комментарий:

Следует заметить, что после ключевого слова while и выражения, заключенного в круглые скобки, точка с запятой не ставится.

Оператор иногда называется телом цикла. В теле цикла должны выполняться действия, в результате которых меняется значение управляющего выражения. В противном случае можем получить бесконечный цикл.

Пример:

/*Демонстрация цикла while*/

#include <stdio.h>

main( )

{

int i=1

while (getchar()!=’R’) i++;

/*оператор getchar() вводит любой символ с клавиатуры*/

printf("Символ R %d-й",i);

}

Приведенная программа позволяет определить порядковый номер первой введенной буквы R в последовательности символов. Она показывает использование цикла while, в теле которого всего одна инструкция (i++ - увеличение значения целого числа i на единицу). Если запустить эту программу на выполнение и ввести последовательность символов, например: abFk!Rgm, то на экране появится строка: Символ R 6-й.

Оператор цикла do-while

Описание: do оператор while (выражение);

Действие: В операторе do-while тело цикла выполняется по крайней мере один раз. Тело цикла будет выполняться до тех пор, пока выражение в скобках не примет ложное значение. Если оно ложно при входе в цикл, то его тело выполняется ровно один раз.

Комментарий: после слова while и выражения, заключенного в скобки, ставится точка с запятой. Если в теле цикла содержится более одной инструкции, то операторы цикла заключаются в фигурные скобки.

Пример:

/*Демонстрация цикла do-while */

#include <stdio.h>

main()

{

int i=0; /*i=0, а не единице*/

do i++; while (getchar()!=’R’);

printf("Символ R %d-й",i);

}


Программа,
 представленная выше, теперь написана с циклом do-while. Результат программы будет таким же.

Оператор цикла for

Описание: for (выражение 1; выражение 2; выражение 3) оператор;

Действие:

В круглых скобках содержится три выражения. Первое из них служит для инициализации счетчика. Она осуществляется только один разкогда цикл for начинает выполняться. Второе выражение необходимо для проверки условия, которая осуществляется перед каждым возможным выполнением тела цикла. Когда выражение становится ложным, цикл завершается. Третье выражение вычисляется в конце каждого выполнения тела цикла, происходит приращение числа на шаг.

Комментарий: в операторе цикла for точка с запятой после закрывающейся круглой скобки не ставится. Любое из трех или все три выражения в операторе могут отсутствовать, однако разделяющие их точки с запятыми опускать нельзя. Если отсутствует выражение 2, имеем бесконечный цикл. Например:for (scanf("%d",&p);;p++) оператор;

В языке СИ предусмотрены две нетрадиционные операции: (++) –для увеличения на единицу и (--) –для уменьшения на единицу значения операнда. Операции ++ и -- можно записывать как перед операндом, так и после него. В первом случае (++n или --n) значение операнда (n) изменяется перед его использованием в соответствующем выражении, а во втором (n++ или n--) –после его использования.

Если отсутствуют выражения 1 и 3, цикл становится эквивалентным while. Например:for (;a<20;) оператор;

Каждое из выражений может состоять из нескольких выражений, объединенных операцией "запятая". Например: for(i=0, j=1; i<100; i++, j++) a[i]=b[j];

Тело цикла заключается в фигурные скобки, если в нем более одного оператора.

Пример:

/*демонстрация цикла for*/

#include <stdio.h>

main()

{int i,j=1,k;

for (i=1;i<=3;i++)

printf("Минск\t");

/*В цикле for три раза выполняется функция вывода*/

/*Здесь i-управляющая переменная цикла*/

printf("\nУкажите число повторений цикла\n");

scanf("%d",&k);

for (i=1;i<=k;i++)

{j*=i;

printf("%d",j);}

/*Здесь две инструкции (более одной), поэтому они заключаются в фигурные скобки*/

j=i;

printf("\n");

/*Переменной j присваивается значение 1 и осуществляется перевод курсора*/

/*В следующем цикле for выполняются те же действия, что и в предыдущем*/

for (i=1;i<=k;i++) printf("%d ", j*=i);

}

Результаты выполнения программы следующие:

Минск Минск Минск

Укажите число повторений цикла; 5

2 6 24 120

2 6 24 120

Оператор break

Описание:

Break используется для прекращения выполнения цикла из-за обнаружения ошибки, для организации дополнения к условию в заголовке цикла, для прекращения бесконечного цикла.

Пример:

while (st>0 && st<25)

{

if st==4||st==8||st==12)

break;

}

Работа цикла полностью прекращается, как только условие в операторе if становится истинным.

Оператор continue

Действие: Этот оператор может использоваться во всех трех типах циклов. Как и в случае оператора break, он приводит к изменению характера выполнения программы. Однако вместо завершения работы цикла наличие оператора continue вызывает пропуск "оставшейся" части итерации и переход к началу следующей.

Пример. Заменим в предыдущей программе оператор break на continue.

while (st>0 && st<25)

{

if (st==4||st==8||st==12)

continue;

}


При истинном условии в операторе if оператор continue вызывает пропуск идущих за ним операторов тела цикла и осуществляется переход к началу следующей итерации.

2. Задание

  1.  Задание взять из таблицы 1 и таблицы 2 согласно варианту.
  2.  Разработать блок-схемы алгоритма.
  3.  Написать и отладить программы.

Таблица 1

варианта

Задание

1.

2.

3.

4.

5.

6.

7.

8.

9.

10.

11.

12.

13.

14.

15.

16.

17.

18.

19.

20.

21.

22.

23

24.

25.

Таблица 2

варианта

Задание

1.

2.

3.

4.

5.

6.

7.

8.

9.

10.

11.

12.

13.

14.

15.

16.

17.

18.

19.

20.

21.

22.

23

24.

25.


Литература

  1.  Подбельский В.В. Язык Cu ++: Учебное пособие. - М.: Финансы и статистика,1995, - 560 с.
  2.  Страуструп Б. Язык программирования Сг ++. - М.: Радио и связь, 1991. - 352 стр.
  3.  Собоцинский В.В. Практический курс Turbo Cu ++. Основы объктно- ориентированного программирования. - М.: Свет, 1993. - 236 с.
  4.  Романов В.Ю. Программирование на языке Cu ++. Практический подход. - М.: Компьтер, 1993. - 160 с.
  5.  Уинер Р. Язык турбо Cu . - М.: Мир, 1991. - 384 с.
  6.  Юлин В.А., Булатова И.Р. Приглашение к Cu. - Мн.: Высш. Шк., 1990,- 224 с.
  7.  Котлинская Г.П., Галиновский О.И. Программирование на языке Cu. -Мн.: Высш. Шк., 1991. - 156 с.



1. Лекции - Офтальмология (Офтальмологический паспорт студента)
2. Тема Доказательства и доказывание в уголовном судопроизводстве
3.  История кружка условия и предпосылки его создания Начиная с 1957 года на нашей кафедре в рамках СНО им
4. Разложение феодализма и генезис капитализма в западной Европе в XVI-последней трети XVIII в
5. Отчет по учебноознакомительной практике Выполнил студент 3 курса заочного отделения Специаль
6. Тема 1.2Основы анализа бухгалтерского баланса
7. Кооперация в концепции либерально-демократической модернизации общества
8. Тема 10- Планирование фонда оплаты труда 1
9. текстовый редактор содержащий следующие компоненты- меню; панель инструментов; окно документа;
10.  проблема юрисдикции отношений в сети Интернет Общественные отношения возникающие при использовании И
11. Корабельные электроэнергетические установки
12. Уровень бедности определяется на основе- фактической заработной платы; минимальной заработной пла.html
13. Модульиспаритель изготовлен из алюминиевых и медных сплавов имеет разборную конструкцию стойкую к горюче
14. - Переедание - Понижение физической активности - Низкий уровень метаболизма I- S- Симптомы ожирения-
15. Операционные усилители представляют собой усилители постоянного тока с высоким коэффициентом усиления д
16. ТЕМА 8 ОСНОВЫ НАЛОГОВОГО ПРАВА 8
17. Воздействие человеческого общества на природу тайги и смешанных лесов До вмешательства человека эти зоны
18. варианта КС т.е. определяется оптимальная марка ГПА число и схема соединения машин данной марки количеств
19. на тему- Убийство совершенное в состоянии аффекта Выполнил курсант группы- 1752 Солнцев Д
20. Сумерки. Сага. Новолуние Для работы я взяла два фона леса Вы можете скачать их здесь и здесь и фото K