Программирование на языке С - 25 стр.

UptoLike

Составители: 

25
for(<инициализация счетчика>;<условие>;<изменение значения
счетчика>)
{
<тело цикла>
}
Рассмотрим особенность реализации данного оператора на примере вывода
таблицы кодов ASCII символов.
char ch;
for(ch = ‘a’; ch <= ‘z’; ch++)
printf(“Значение ASCII для %c - %d.\n”,ch,ch);
В данном примере в качестве счетчика цикла выступает переменная ch, которая
инициализируется символом ‘a’. Это означает, что в переменную ch заносится
число 97 – код символа ‘a’. Именно так символы представляются в памяти
компьютера. Код символа ‘z’ – 122, и все малые буквы латинского алфавита
имеют коды в диапазоне [97; 122]. Поэтому, увеличивая значение ch на
единицу, получаем код следующей буквы, которая
выводится с помощью
функции printf(). Учитывая все вышесказанное, этот же пример можно записать
следующим образом:
for(char ch = 97; ch <= 122; ch++)
printf(“Значение ASCII для %c - %d.\n”,ch,ch);
Здесь следует отметить, что переменная ch объявлена внутри оператора for. Это
особенность языка С - возможность объявлять переменные в любом месте
программы.
Существует много особенностей реализации данного оператора, отметим
основные из них, которые могут заметно повысить скорость написания
программ. Следующим примером продемонстрируем особенности изменения
значения счетчика цикла.
int line_cnt = 1;
double debet;
for(debet = 100.0; debet < 150.0; debet = debet*1.1,
line_cnt++)
printf(“%d. Ваш долг теперь равен %.2f.\n”,line_cnt, debet);
Следующий фрагмент программы демонстрирует возможность
программирования сложного условия внутри цикла.
int exit = 1;
for(int num = 0;num < 100 && !exit; num += 1)
{
scanf(“%d”,&mov);
if(mov == 0) exit = 0;