русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Оператор присваивания. Арифметические выражения.


Дата добавления: 2015-06-12; просмотров: 528; Нарушение авторских прав


В языке программирования Си, существуют различные операторы. Самым главным является оператор присваивания, который обозначается символом =. Он используется в любой программе, кроме простейших, типа нашей первой программы, выводящей на экран Hello world. Как вы уже помните из урока программирования посвященного типам данных, с помощью него мы присваиваем переменной находящейся слева от оператора присваивания, значение выражения находящегося справа от него. Например:

Листинг 4.1

int a,b;

a=7;// переменной a присвоить значение 7

b=2;// переменной b присвоить значение 2

Также есть операторы, отвечающие за простейшие арифметические действия, такие как сложение, вычитание, умножение и деление.

«+» - сложение

«-» - вычитание

«*» - умножение

«/» - деление

Кроме четырех основных есть еще такая операция как получение остатка от деления «%».

Их можно использовать совместно с оператором присваивания. Например:

Листинг 4.2.

int a;

a=7+3;// переменной a присвоить результат выражения 7+3, т.е.в неё запишется 10

a=a-2;// переменной a присвоить результат выражения a-2

Обратите внимание на последнюю строчку. С точки зрения математики такая запись не имеет смысла. Это надо понимать следующим образом. Сначала берется значение переменной a, из него вычитается 2 и после этого результат этого выражения записывается снова в переменную a. В результате работы программы Листинг 4.2, в переменной a будет значение 8. ( Во второй строке мы присвоили её значение 10. Потом, в третей строке, мы берем 10 вычитаем 2, получаем 8, и записываем этот результат снова в переменную а.)

Кстати, очень важное замечание.

После того как мы объявили переменную, её значение не определено, в ней содержится какой-то мусор, не стоит считать, что её значение после объявления равно 0.

Т.е. пока мы в переменную a не сохранили значение 10, там был непонятный мусор.



Еще один важный момент. Посмотрите на листинг 4.3

Листинг 4.3

int a,b;

a=10;// переменной a 10

b=a-2;// переменной b присвоить результат выражения a-2

Когда мы используем переменную в каком-то выражении мы работаем не с самой переменной, а только со значением, которое в ней сохранено. Т.е. когда мы переменной b присваиваем значение выражения a-2, в переменной a так и остается значение 10. Оно на 2 не уменьшается. Компьютер в выражение a-2 подставляет значение переменной a, т.е. он заменяет a-2, на 10-2.

Теперь рассмотрим простейшую программу

Листинг 4.4

#include <stdio.h>

int main(){

int a,b;

float c;

a=7;

b=2;

c=a+b; // в переменную с записать сумму переменных a и b

printf("summa %f\n", c);

c=a-b;

printf("raznozt' %f\n", c);

c=a*b;

printf("proizvedenie %f\n", c);

c=a/b;

printf("delenie %f\n", c);

c=a%b;

printf("ostatok ot deleniya %f\n", c);

return (0);

}

Вот результат её работы:

Программа иллюстрирующая работу стандартных арифметических операторов.

Если вы были внимательны, то заметили, наверное, что при делении получился неправильный ответ. 7 поделить на 2 равняется 3.5.

Это одна из особенностей языка программирования Си.

При делении целочисленной переменной на целочисленную переменную остаток от деления теряется. Поэтому 7/2 получилось 3.

Чтобы получить правильный ответ нужно делитель или делимое преобразовать к вещественному типу float. Для этого, перед переменной в скобочках нужно написать тип, к которому она преобразуется.

Листинг 4.5

c=(float)a/b;

c=a/(float)b;

Такая операция называется явным преобразованием типа.Таким образом можно привести и переменную типа float к типу int. Но тогда мы потеряем всю дробную часть, которая стоит после точки. О преобразовании типов в языке Си, мы ещё будем говорить в следующих уроках.



<== предыдущая лекция | следующая лекция ==>
 | Операторы инкремента и декримента.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.032 сек.