C. Бочков - Язык программирования Си для персонального компьютера
- Название:Язык программирования Си для персонального компьютера
- Автор:
- Жанр:
- Издательство:СП Диалог, Радио и связь
- Год:1990
- ISBN:5-256-00974-5
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
C. Бочков - Язык программирования Си для персонального компьютера краткое содержание
Книга содержит полное описание наиболее распространенных реализаций языка программирования Си на 16-разрядных микроЭВМ, совместимых с IBM PC. Приведено описание стандартных библиотек языка.
Для слушателей учебных курсов в области программирования, разработчиков программного обеспечения, а также студентов соответствующих специальностей вузов. Может быть использовано как техническая документация и справочное пособие для широкого круга программистов, как профессионалов, имеющих большой опыт работы на языке Си, так и начинающих программировать на Си.
Язык программирования Си для персонального компьютера - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
Первым шагом при выполнении оператора цикла forявляется вычисление начального выражения, если оно имеется. Затем вычисляется условное выражение и производится его оценка следующим образом:
1) Если условное выражение истинно (не равно нулю), то выполняется тело оператора. Затем вычисляется выражение приращения (если оно есть), и процесс повторяется.
2) Если условное выражение опущено, то его значение принимается за истину и процесс выполнения продолжается, как описано выше. В этом случае оператор цикла forпредставляет бесконечный цикл, который может завершиться только при выполнении в его теле операторов break, goto, return.
3) Если условное выражение ложно, то выполнение оператора forзаканчивается и управление передается следующему за ним оператору в программе. Оператор forможет завершиться и при выполнении операторов break, goto, returnв теле оператора.
Пример:
for(i = space = tab = 0; i < MAX; i++) {
if(line[i] == '\x20')
space++;
if(line[i] =='\1'){
lab++;
line[i] = '\x20';
}
}
В приведенном примере подсчитываются символы пробела ('\x20') и горизонтальной табуляции ('\1') в массиве символов с именем lineи производится замена каждого символа горизонтальной табуляции на пробел.
Сначала i, spaceи tabинициализируются нулевыми значениями. Затем iсравнивается с константой МАХ. Если iменьше МАХ, то выполняется тело оператора. В зависимости от значения line[i]выполняется тело одного из операторов if(или ни одного из них). Затем переменная iинкрементируется и снова сравнивается с именованной константой МАХ. Тело оператора выполняется до тех пор, пока значение iне станет больше или равно МАХ.
Оператор цикла с предусловием while
Синтаксис:
while (< выражение >) < оператор >
Действие:
Тело оператора цикла whileвыполняется до тех пор, пока значение < выражения > не станет ложным (т.е. равным нулю). Вначале вычисляется < выражение >. Если < выражение > изначально ложно, то тело оператора whileвообще не выполняется и управление сразу передается на следующий за телом цикла оператор программы. Если < выражение > истинно, то выполняется тело цикла. Перед каждым следующим выполнением тела цикла < выражение > вычисляется заново. Этот процесс повторяется до тех пор, пока < выражение > не станет ложкам. Оператор цикла whileможет также завершиться при выполнении операторов break, goto, returnвнутри своего тела.
Пример:
while (i >= 0) {
slring1[i] = string2[i];
i--;
}
В вышеприведенном примере элементы массива string2копируются в массив string1. Если iбольше или равно нулю, то производится копирование (путем присваивания) очередного элемента, после чего iдекрементируется. Когда iстановится меньше нуля, выполнение оператора whileзавершается.
Оператор цикла с постусловием do
Синтаксис:
do < оператор >while ( < выражение >);
Действие:
Тело оператора цикла doвыполняется один или несколько раз до тех пор, пока значение < выражения > не станет ложным (равным нулю). Вначале выполняется тело цикла — < оператор >, затем вычисляется условие — < выражение >. Если выражение ложно, то оператор цикла doзавершается и управление передается следующему за оператором whileоператору программы. Если значение выражения истинно (не равно нулю), то тело цикла выполняется снова, и снова вычисляется выражение. Выполнение тела оператора цикла doповторяется до тех пор, пока выражение не станет ложным. Оператор doможет также завершиться при выполнении в своем теле операторов break, goto, return.
Пример:
do {
у = f(x);
х--;
} while(x > 0);
Вначале выполняется составной оператор. Затем вычисляется выражение х>0.Если оно истинно, то составной оператор выполняется снова, и снопа вычисляется выражение х>0.Тело оператора цикла doвыполняется до тех пор, пока значение хне станет меньше или равно нулю.
Оператор продолжения continue
Синтаксис:
continue;
Действие:
Оператор продолжения continueпередает управление на следующую итерацию в операторах цикла do, for, while. Он может появиться только в теле этих операторов. Остающиеся в теле цикла операторы при этом не выполняются. В операторах цикла doи whileследующая итерация начинается с вычисления условного выражения. Для оператора forследующая итерация начинается с вычисления выражения приращения, а затем происходит вычисление условного выражения.
Пример:
while(i-- > 0) {
х = f(i);
if(х == 1)
continue;
else
y = x * x;
}
Тело оператора цикла whileвыполняется, если iбольше нуля. Сначала значение f(i)присваивается х; затем, если хне равен 1, то уприсваивается значение квадрата х, и управление передается в заголовок цикла, т. е. на вычисление выражения i-->0. Если же х равен 1, выполняется оператор продолжения continue, и выполнение возобновляется с заголовка оператора цикла while, без вычисления квадрата х.
Оператор-переключатель switch
Синтаксис:
switch( < выражение >)
{
[< объявление >]
[case < константное-выражение >:] [ < оператор >]
[case < константное-выражение >:] [< оператор >]
[default:] [ < оператор >]
}
Действие:
Оператор-переключатель switchпредназначен для выбора одного из нескольких альтернативных путей выполнения программы. Выполнение оператора-переключателя начинается с вычисления значения выражения переключения (выражения, следующего за ключевым словом switchв круглых скобках). После этого управление передается одному из < операторов > тела переключателя. В теле переключателя содержатся конструкции case < константное-выражение >:, которые синтаксически представляют собой метки операторов. Константные выражения в данном контексте называются константами варианта. Оператор, получающий управление, — это тот оператор, значение константы варианта которого совпадает со значением выражения переключения. Значение каждой константы варианта должно быть уникальным внутри тела оператора-переключателя.
Читать дальшеИнтервал:
Закладка: