Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
c++ / L_31.doc
Скачиваний:
105
Добавлен:
02.04.2015
Размер:
70.66 Кб
Скачать

Структура повторения do/while

Цикл do-while – единственный цикл, который всегда выполняет итерацию хотя бы один раз.

Общая форма записи цикла do/while :

do {

оператор(ы);

}

while (условие); // пока условие выполняется

Если при выполнении цикла повторяется только один оператор, то фигурные скобки можно опустить, хотя они вносят в этот оператор определенную ясность.

Пример

int num;

do

{

puts(“Input number”);

scanf(“%d=?”,&num);

}

while (num != 100); // если будет введено число 100 цикл

// закончится

Пример

#include <ctype.h> // обязательна!!!

…..

char ch;

int digits=0;

do

{ ch=getch(); // чтение символа

printf("%c",ch); // отображение на экране

if (isdigit(ch)) digits++;// проверка,является символ цифрой

}

while(ch !='n');

printf("\n%d=" ,digits);

Символьные функции библиотеки ctype

if(ch>=’a’ &&ch<=’z’) || (ch>’A’ &&ch<=’Z’) –

Функция

проверка является ли символ:

isalpha(ch)

буквой

isalnum(ch)

алфавитно-цифровым символом

iscntrl(ch)

управляющим символом

isdigit(ch)

цифрой

islower(ch)

буквой нижнего регистра

ispunct(ch)

символом пунктуации

ch=toupper(ch)

нижнего регистра. Если да, то возвращает символ верхнего регистра для латиницы

ch=tolower(ch)

верхнего регистра. Если да, то возвращает символ нижнего регистра для латиницы

Инструкция goto

for (…) {

for(…) {

while (…) {

if (…) goto stop;

}

}

}

stop:

printf(“Выход из программы”);

Оператор continue

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

int i;

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

{

if (i%7) continue; // если делится нацело без остатка, то пропускается

// оператор printf

printf(“%8d”,i);

}

Инструкция break

Используется для выхода из циклов do, for и while в

обход обычного условия выхода из цикла. Действует только в пределах своего цикла

int i;

for (t=0;t<100;t++)

{

if (t= =10) break;

printf(“%d”,t);

}

-

--------------------------------------------------

int t,count;

for (t=0;t<100;t++)

{

count=0;

for (;;)

{

printf(“%d\n”,count);

count++;

if (count= =10) break;

}

}

При каждом выполнении инструкции break управление передается во внешний цикл.

Задачи

  1. Определить время года по номеру месяца.

Определить стоимость междугородного телефонного разговора. Ввод количества минут и кода направления

Соседние файлы в папке c++