Выражения целого типа

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

К арифметическим операциям относятся:

+ сложение 3 + 2 = 5

- вычитания 5 – 2 = 3

* умножение 3 * 2 = 6

/ деление нацело 5 / 3 = 1

% остаток от деления 5 % 3 = 2

5 % 2 = 1

5 % 1 = 0

5 % 5 = 0

2 % 3 = 2

++ инкремент x++ = x + 1

++x = x + 1

-- декремент x-- = x – 1

--x = x – 1

В отличие от Паскаля, в выражения целого типа языка Си могут входить и операнды символьного типа (char), при этом операции выполняются над кодами символьных констант, а результат может быть выражен или целым числом, или символом:

‘A’ + 3 = ‘D’

‘A’ + 3 = 68

‘a’ – 32 = ‘A’

‘a’ – 32 = 65

‘0’ + 1 = 49

‘0’ + 1 = ‘1’

В языке Си используются три логические операции:

!НЕ отрицание, инверсия,

||ИЛИ логическое сложение, дизъюнкция,

&&И логическое умножение, конъюнкция

и шесть операций сравнения:

==равно,

!= не равно,

> больше,

>= больше или равно,

< меньше,

<= меньше или равно.

Внимание! Операция равно в Си обозначается не одним, как в Паскале, а двумя знаками равенства: ==

Результатами логических операций и операций сравнения могут быть две константы:

1 – истина,

0 – ложь.

Причем считается, что если операнд в выражении не равен нулю (не ложь), то он имеет значение истина:

5&&3 = 1 истина И истина есть истина

5&&0 = 0 истина И ложь есть ложь

5||3 = 1

5||0 = 1

0||0 = 0

!1 = 0 НЕ истина есть ложь

!5 = 0

5==5 = 1 5 равно 5 есть истина

5==3 = 0

5!=5 = 0 5 не равно 5 есть ложь

5!=3 = 1

5>3 = 1

5<=3 = 0

Побитовые операции выполняются над двоичными кодами операндов, над каждым разрядом кода отдельно. К ним относятся:

&И 5&3 = 1 101 = 5

&

011 = 3

___

001 = 1

|ИЛИ 5|3 = 7 101 = 5

|

011 = 3

___

111 = 7

^ исключающее ИЛИ 5^3 = 6 101 = 5

^

011 = 3

___

110 = 6

Приоритет выполнения операций:

! НЕ

- изменение знака

++ инкремент

-- декремент

Эти операции имеют наивысший приоритет и выполняются в выражениях справа налево.

За ними следуют операции:

*, /, % операции типа умножения

+, - операции типа сложения

>, >=, <, <= операции сравнения

==, != операции равенства

& побитовое И

^ исключающее ИЛИ

| побитовое ИЛИ

&& логическое И

|| логическое ИЛИ

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

Примеры записи выражений целого типа:

sqrt(a)*b*b

5*pow(x,3) 5*x*x*x

a*b/c + c/(a*b)

cos(x*x*x)*cos(x*x*x)

exp(log(1.0+x)/3.0) pow((1.0+x),1.0/3.0)

Внимание! Ошибочная запись pow((1.0+x),1/3)

Примеры вычислений выражений целого типа:

(5&3) + (5|3)= 8

(3>5)||(4%2)&&(4/2) = 0

(('a' - 32)=='A') + !(3>5) + (5||3) = 3

(5&&3) + (5||3) +!5 = 2

((5>3)==(5!=3)) + !('A'>'B') + ('A'==65) = 3

(!(2%3)||(2%3)) + (!(2/3)&&(2/3)) + !((3>5)||(5>2)) = 1

8/3%2 + !('C' - 'A' == 3%5) - ceil(pow(0.5,2)) = 0








Дата добавления: 2015-10-19; просмотров: 733;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.011 сек.