Полезные примеры

1. Организация выхода из бесконечного цикла по нажатии клавиши Esc

while (1) { // Бесконечный цикл

...

if (kbhit() && getch()==27 ) break;

...

}

Функция kbhit() возвращает значение > 0, если нажата любая клавиша, а функция getch() возвращает код нажатой клавиши (код клавиши Esc равен 27). В результате выполнения оператора if, если будет нажата клавиша Esc, выполнится оператор break и произойдет выход из цикла.

Приведенный пример – распространенный прием программирования.

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

...

while (!kbhit());

...

 

 

7.3. Оператор цикла с постусловием do – while

Цикл с постусловием реализует структурную схему, приведенную на рис. 7.1, б.

Общий вид записи такой конструкции

do

код цикла;

while (выражение);

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

Здесь сначала выполняется код цикла, после чего проверяется, надо ли его выполнять еще раз.

Следующая программа будет «вас приветствовать» до тех пор, пока будем вводить символ Y или y (Yes). После введения любого другого символа цикл завершит свою работу.

#include <stdio.h>

void main(void)

{

char answer;

do {

puts(" Hello! => ");

scanf(" %c ", &answer);

}

while ((answer=='y')||(answer=='Y'));

}

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

Hello! => Y

Hello! => y

Hello! => d

 

 








Дата добавления: 2014-12-30; просмотров: 690;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.005 сек.