M. УЭИТ - Язык Си - руководство для начинающих

Тут можно читать онлайн M. УЭИТ - Язык Си - руководство для начинающих - бесплатно полную версию книги (целиком) без сокращений. Жанр: comp-programming, издательство Мир, год 1988. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Язык Си - руководство для начинающих
  • Автор:
  • Жанр:
  • Издательство:
    Мир
  • Год:
    1988
  • Город:
    Москва
  • ISBN:
    5-03-001309-1 /русск./
  • Рейтинг:
    3.56/5. Голосов: 91
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 80
    • 1
    • 2
    • 3
    • 4
    • 5

M. УЭИТ - Язык Си - руководство для начинающих краткое содержание

Язык Си - руководство для начинающих - описание и краткое содержание, автор M. УЭИТ, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru
M. УЭИТ   С. ПРАТА    Д. МАРТИНЯзык Си — руководство для начинающих

Язык Си - руководство для начинающих - читать онлайн бесплатно полную версию (весь текст целиком)

Язык Си - руководство для начинающих - читать книгу онлайн бесплатно, автор M. УЭИТ
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

switch(целоe выражение)

{ case константа1 : операторы; (необязательные)

case константа2 : операторы; (необязательные)

case default (необязательные) : операторы; (необязательные)

}

switch (number)

{

case 1: оператор1;

break;

case 2: оператор 2;

break;

сазе 3: оператор 3;

break;

default:оператор4;

}

оператор5;

switch (number) {

case 1: оператор 1;

case 2: оператор 2;

case 3: оператор 3;

defauit: оператор 4;

}

оператор 5;

В обоих случаях значение numberравно 2.

РИС. 7.8. Ход выполнения программы, использующей оператор switchпри наличии или в отсутствии операторов break

Когда мы хотим получить одинаковый результат при переходе к разным меткам, мы можем использовать метки без операторов. Например, фрагмент программы

case 'E':

case 'e':

printf(" ехидна, муравьед колючий \n" );

break;

свидетельствует о том, что указание букв Еили еприводит к печати названия "ехидна". Если будет введена буква Е, то произойдет переход к соответствующей метке, но, поскольку там операторы отсутствуют, будут выполняться операторы, расположенные ниже, пока не встретится оператор break.

Наша программа имеет две небольшие особенности, о которых мы хотели бы упомянуть.

Первая поскольку мы собираемся использовать программу в диалоговом режиме, мы решили воспользоваться символом #вместо EOFв качестве признака прекращения ее работы. В работе компьютера могли бы возникнуть сложности, если бы он предложил нам ввести признак EOFили даже какой-нибудь управляющий символ, между тем как символ #вполне подходит для этой цели. Поскольку теперь отсутствует необходимость чтения символа EOF, мы не должны описывать в программе переменную chтипа int.

Вторая мы использовали оператор if, который позволяет игнорировать символы "новая строка" при вводе символов в программу. Это тоже некоторая плата за возможность диалоговой работы. Без этого оператора ifкаждый раз при нажатии клавиши [возврат]программе пришлось бы рассматривать данный признак как прочитанный символ.

Когда требуется использовать оператор switch, а когда конструкцию else-if? Часто у нас нет возможности выбора. Вы не можете применить оператор switch, когда выбор вариантов основывается на вычислении значения переменной или выражения типа int. Удобного способа воспользоваться оператором switchв случае когда возможные значения переменной попадают в некоторый диапазон, также не существует. Проще написать, например, так:

if(integer < 1000 && integer > 2)

В то время как замена этой строки оператором switchприведет к необходимости ввести в программу метки для всех целых чисел от 2 до 999. Тем не менее, если у вас есть возможность применить оператор switch, ваша программа будет выполняться более эффективно.

Резюме: множественный выбор вариантов с помощью оператора switch

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

Как выражения , так и метки должны иметь значения целого типа (включая тип char), метки должны быть константами или константными выражениями. Если не которому значению выражения не соответствует никакая метка, управление передается оператору с меткой default(если такой имеется). В противном случае, управление передается оператору, следующему за оператором switch.

III. Форма:

switch (выражение)

{ case метка1: оператор1

case метка2: оператор2

default: оператор3

}

В операторе может присутствовать более чем 2 помеченных оператора, а наличие метки defaultявляется необязательным.

IV. Пример

switch (letter)

{

case 'a':

case 'e': printf(" %c - этогласная\n ", letter);

case 'c':

case 'n': printf(" Символ%свнаборебукв\ саnе\ n ", letter);

default: printf(" Добрыйдень. \n" );

}

Если переменная letterимеет значение ' a' или ' e', будут выведены на печать все три сообщения, если же ' c' или ' n', то последние два. В случае остальных значений будет напечатано только последнее сообщение.

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

ЧТО ВЫ ДОЛЖНЫ БЫЛИ УЗНАТЬ В ЭТОЙ ГЛАВЕ

Как осуществить выбор из двух возможностей выполнить оператор или пропустить его: с помощью оператора if.

Как осуществить выбор одного из двух вариантов: с помощью оператора if-else.

Как осуществить выбор одного из нескольких вариантов: с помощью операторов else-if, switch

Операции отношения: > >= = = <= < !=

Логические операции: && || !

ВОПРОСЫ И ОТВЕТЫ

Вопросы

1. Определите, какие выражения истинны, а какие ложны.

а. 100 > 3

б. 'а' > 'с'

в. 100 > 3 && 'а' > 'с'

г. 100 > 3 || 'a' > 'с'

д. !(100 > 3)

2. Запишите выражения, соответствующие следующим условиям

а. Значение numberравно или больше 1, но меньше 9

б. Значение chне равно qили k

в. Значение numberлежит между 1 и 9, но не равно 5

г. Значение numberне лежит между 1 и 9

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

main( ) /* 1 */

{ /* 2 */

int weight, height; /* вес в фунтах, рост в дюймах */

/* 4 */

scanf('' %d, weight, height); /* 5 */

if(weight < 100) /* 6 */

if (height >= 72) /* 7 */

printf(" Для такого веса у вас слишком большой рост \n");

else if (height < 72 && > 64) /* 9 */

printf(" У вас большой рост для вашего веса. \n" );

else if (weight > 300 && !(weight < = 300)) /* 11*/

if( !(height >= 48) /* 12 */

printf(" Для такого веса у вас слишком маленький рост.\n" );

else /* 14 */

printf(" У вас идеальный вес. \n"); /* 15*/

/* 16 */

}

Ответы

1. Выражения истинны в вопросах а и г

2. a. number > = 1&& number < 9

б. ch != 'q'&& ch != k

Замечание : выражение ch != q || ch!= kвсегда будет иметь значение "истина", потому что если переменная сhравна q, то она не может равняться k, и второе условие оказывается выполненным врезультате все выражения "ИЛИ" будет истинным.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


M. УЭИТ читать все книги автора по порядку

M. УЭИТ - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Язык Си - руководство для начинающих отзывы


Отзывы читателей о книге Язык Си - руководство для начинающих, автор: M. УЭИТ. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x