Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Арифметические операции. Операции сложения, вычитания, умножения и деления можно использовать ко всем типам данных






Операции сложения, вычитания, умножения и деления можно использовать ко всем типам данных. Если операнды одного типа, то результат будет того же типа. Например, вычисляя выражение 12/5, так как операнды целые числа, то в результате получим целое число 2 (округление не выполняется). С другой стороны, если рассчитывается выражение 12./5, результатом будет вещественное число 2.4.

Операция деление по модулю используется при необходимости вычисления остатка от деления целых чисел, например, при вычислении выражения 17%3, результатом будет целое число 2.

Операции присваивания

Эти операторы имеют наименьший приоритет при вычислении выражений, т.е. выполняются в последнюю очередь (за исключением оператора запятая). В языке Си знак равенства означает выполнение операции присваивания. Например, выражение

x=10+3*4;

означает, что вначале вычисляется выражение слева от знака равенства и затем результат присваивается переменной x. Поэтому выражения

x=x+2;

приобретают при программировании строго определенный смысл: вначале вычисляется выражение справа от знака равенства (к старому значению переменной x прибавляется число 2) и затем полученный результат присваивается переменной x.

Оператор присваивания выполняется справа налево. В языке Си возможно использования выражений с несколькими операторами присваивания, например, допустимо использовать следующее выражение

с=b=5*(a=5*45);

Оно выполняется в следующем порядке: вычисляется значение 5*45, результат присваивается переменной ‘а’, затем эта переменная умножается на 5 и результат присваивается переменной ‘b’, и далее присваивается переменной ‘c’.

Помимо традиционной операции присваивания в языке Си существуют дополнительные операции: +=, –=, *= и т.п. Например, операции слева и справа в приведенной ниже таблице идентичны

a=a+10; a+=10;
a=a/10; a/=10;
a=a& 64; a& =10;
a=a> > 1; a> > =1;

 

Достоинства этих операции – они выполняются быстрее, чем операции с обычным присваиванием.

Пример 4.1

Пример использования арифметических операций и операций присваивания:

Листинг 4.1

#include < stdio.h>

void main()

{

int a=25, b=3, с, d;

float x=25., y=3, z;

c=a/b;

d=a%b;

printf(“Деление целых чисел: %d\nОстаток: %d\n”, c, d);

z=x/y;

printf(“Деление вещественных чисел: %d %d\n”, c, d);

a=a+10;

y=y*3;

printf(“Традиционная форма операции присваивания: %d %f\n”, a, y);

a+=10;

y*=3;

printf(“Присваивание со сложение и умножением: %d %f”, a, y);

}

 

Результат выполнения программы:

Деление целых чисел: 8

остаток: 1

Деление вещественных чисел: 8.333333

Традиционная форма операции присваивания: 35 9.000000

Присваивание со сложение/умножением: 45 27.000000






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.