Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
SIT.doc
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
349.18 Кб
Скачать

Оператор безусловного перехода

Оператор goto служит для выхода из вложенных циклов или для перехода к нужному месту программы. Этот оператор тесно связан с таким понятием, как метка. Метка в С/С++ -это идентификатор, за которым следует двоеточие. Например,

goto exit;

exit: printf(“конец программы");

Пример использования оператора безусловного перехода представлен в программе 2.1.

Оператор switch

Язык С имеет встроенный оператор множественного выбора switch. Основная форма оператора имеет вид

switch(выражение) {

case const1:

Последовательность операторов

break;

case const2:

Последовательность операторов

break;

case const2:

Последовательность операторов

break;

default:

Последовательность операторов

Сначала выполняется выражение в скобках за ключевым словом switch. Затем рассматривается список меток до тех пор, пока не находится метка, соответствующая значению вычисленного выражения. Далее происходит выполнение соответствующей последовательности операторов, следующих за двоеточием. Если же значение выражения не соответствует ни одной из меток оператора switch, то выполняется последовательность операторов, следующая за ключевым словом default.

Допускается конструкция оператора, когда слово default и соответствующая последовательность операторов может отсутствовать.

Еще один, не встречавшийся нам ранее, оператор break. Когда после последовательности операторов встречается ключевое слово break, то выполнение его приводит к выходу из оператора switch и переходу к следующей строке программы. Наличие этого оператора необязательно.

Пример использования оператора switch:

switchh){

casej’:

printf(“Sessia”); break;

casef’:

printf(“Study”); break;

casea’:

printf("holidays"); break;

default:

printf(“Work");

Циклы Цикл for

Общий вид оператора цикла:

for(инициализация; проверка условия; изменение) оператор;

или

for(инициализация; проверка условия; изменение)

последовательность операторов}

Например,

for(i=0;i<2; i++) printf("i= %d\n", i);

или

for(char c='a'; c<'e'; C++) { scanf("%c\n", &c); c= char(ord(c)-l); printf("%c\n", c); }

или

for(char с =’a’; c!='e';) scanf<"%c\n", &c);

Этот цикл будет выполняться до тех пор, пока с клавиатуры не будет введен символ 'е'.

Следующий пример иллюстрирует выполнение составного оператора после цикла:

for(i=0: i<2: i++) {

prinlf("h %d\n", i);

int x=i (i+1);

printf(“x=%d\n". x);}

Следующая программа выводит последовательность символов и их машинных кодов от 0до 255:

Программа 2.2:

#include<stdio.h>

void main() {

char c=0;

for (int i=0; i<256; i++)

printf(“%c=%d",c,c++); }

Циклы while и do-while

Основная форма оператора цикла while с предусловием имеет вид

while(условие) оператор; или whilе(условие) {последовательность операторов}

Цикл выполняется до тех пор, пока условие истинно. Когда условие принимает значение “ложно”, управление передается следующему оператору программы.

В отличие от предыдущих циклов в цикле do-while условие проверяется в конце оператора цикла. Основная форма оператора do-while следующая

do {

последовательность операторов

} while (условие);

Фигурные скобки не обязательны, если внутри них находится один оператор. Какое бы условие не стояло в конце оператора, набор операторов в фигурных скобках выполнится хотя бы один раз.

Следующая программа иллюстрирует использование операторов цикла

№ строки

Программа 2.3.

1

#include<stdio.h>

void main()

2

{ int i;

3

for (i=0; i<2; i++)

{printf(“i=%d\n”,i);}

4

for(cha c=’a’; c<’e’; c++)

{if (c==’d’) printf(“end of the loop for c=%c\n”,c); }

5

while (c<’f’)

{printf(“loop while c=%c\n”,c++);}

6

c=’a’;

7

do

{printf(“loop do c=%c\n”, ++c); } while(c<’d’);}

Результат выполнения этой программы

i=0

i=1

end of the loop for c=d

loop while c=e

loop do c=b

loop do c=c

loop do c=d

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]