C++   ::   Хилл Мюррей

Страница: 34 из 357

Предполагаемся, что вы укажете единицы измерения вводимых данных,добавляя i для дюймов и c для сантиметров:

#include «stream.h»

main() (* const float fac = 2.54; float x, in, cm; char ch = 0;

cout «„ "введите длину: "; cin “» x »» ch;

if (ch == 'i') (* // inch – дюймы in = x; cm = x*fac; *) else if (ch == 'c') // cm – сантиметры in = x/fac; cm = x; *) else in = cm = 0;

cout «„ in «« " in = " «« cm «« « cm\n“; *)

Заметьте, что условие в операторе if должно быть заключено в круглые скобки.



1.4.6 Операторы switch

Оператор switch производит сопоставление значения с множеством констант. Проверки в предыдущем примере можно записать так:

switch (ch) (* case 'i': in = x; cm = x*fac; break; case 'c': in = x/fac; cm = x; break; default: in = cm = 0; break; *) Операторы break применяются для выхода из оператора

switch. Константы в вариантах case должны быть различными, и если проверяемое значение не совпадает ни с одной из констант, выбирается вариант default. Программисту не обязательно предусматривать default.



1.4.7 Оператор while

Рассмотрим копирование строки, когда заданы указатель p на ее первый символ и указатель q на целевую строку. По соглашению строка оканчивается символом с целым значением 0.

while (p != 0) (* *q = *p; // скопировать символ q = q+1; p = p+1; *) *q = 0; // завершающий символ 0 скопирован не был

Следующее после while условие должно быть заключено в круглые скобки. Условие вычисляется, и если его значение не ноль, выполняется непосредственно следующий за ним оператор. Это повторяется до тех пор, пока вычисление условия не даст ноль.

Этот пример слишком пространен.

|< Пред. 32 33 34 35 36 След. >|

Java книги

Контакты: [email protected]