Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Glava_2.doc
Скачиваний:
13
Добавлен:
18.11.2019
Размер:
1.09 Mб
Скачать

15

Действия: что делает программа Глава 2 Выражения

Выражения — это операции, которые выполняют программы. Если valueA, valueB и valueC- — переменные типа int, то выражение

valueB + valueC

вычисляет сумму значений valueB и valueC. Результат выражения обычно присваивается какой-нибудь переменной с помощью оператора, аналогичного следующему:

valueA = valueB + valueC; I

После выполнения этого оператора значение valueA будет равно сумме значений valueB и valueC. Знак плюс — один из операторов языка С. Он ука­зывает компилятору, какую операцию нужно выполнить над двумя операндами.

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

Арифметические операторы

Еще сидя за школьной партой, вы узнали, как обращаться с арифметически­ми операторами +, -, * и / (табл.2.1). В языке С эти операторы работают ана­логичным образом. Может быть, только оператор деления по модулю (%) вам знаком не так хорошо. Оператор % используется для вычисления остатка от де­ления целых чисел. Например, значение выражения 24 % 11 (читается "24 по модулю 11") равно 2, т.е. остатку от целочисленного деления 24/11. Значение выражения 8 % 2 равно 0, так как 8 делится на 2 без остатка.

Таблица 2.1. Арифметические операторы

Оператор

Описание

Пример

*

Умножение

(а *. Ь)

/

Деление

(а / Ь)

+

Сложение

(а + Ь)

-

Вычитание

(а - Ь)

%

Деление по модулю

(а % Ь)

Листинг 2.1 содержит пример числовых выражений, использующих арифметические операторы. В примере выполняется преобразование значений градусов по Фаренгейту в градусы по Цельсию.

Листинг 2.1. CELSIUS(преобразование градусов по Фаренгейту в градусы по Цельсию)

_______________________________________________________________________

1: #include <stdio.h>

2: #include <stdlib.h>

3:

4: main()

5: {

6: double fdegrees, cdegrees;

7: char answer[128];

8:

9: printf("Fahrenheit to Celsius conversion\n\n");

10: printf("Degrees Fahrenheit? ");

11: gets(answer);

12: fdegrees = atof(answer);

13: cdegrees = ((fdegrees - 32.0) * 5.0) / 9.0;

14: printf("Degrees Celsius = %f\n", cdegrees);

15: return 0;

16: }

Программа использует две переменные с плавающей запятой типа double - fdegrees и cdegrees. После того как программа предложит ввести число, функция atof() преобразует строку answer в число с плавающей запя­той, присвоив результат переменной fdegrees. Выражение

((fdegrees - 32.0) * 5.0)/ 9.0

вычисляет эквивалентную температуру в градусах по Цельсию. При этом наличие круглых скобок в выраже­нии влияет на обычный порядок выполнения операций: прежде всех выполняются операции, заключенные во "внутренние" круглые скобки. В этом примере выражение вычисляется в такой последовательности:

1) 32.0 вычитается из fdegrees;

2) результат первого шага умножается на 5.0;

  1. результат второго шага делится на 9.0.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]