
- •История развития эвм.
- •Характеристика современных языков программирования
- •Понятие алгоритма.
- •Блок-схема алгоритма.
- •Использование псевдокодов для разработки программы.
- •Планирование процесса решения задачи.
- •Основные этапы разработки программы
- •12. Структура и элементы программы.
- •13. Определение оператора. Роль свободного пространства в операторах.
- •14. Пустой и составной операторы.
- •15. Определение выражения. Простые и сложные выражения.
- •16. Операции. Категории операций.
- •17. Хранение данных в переменных и константах
- •18. Определение переменной. Требования к именам переменных.
- •19. Типы числовых переменных.
- •20. Операции отношения, их приоритет.
- •21. Булевы (логические) операторы. Приоритет логических операций.
- •22. Понятие символа и строки. Используемые типы данных.
- •23. Массивы символов. Инициализация символьных массивов.
- •24. Работа со строками без использования массивов. Функция malloc().
- •25. Ввод строк с клавиатуры. Функции gets() и scanf().
- •26. Вывод строк и символов. Функции puts() и printf().
- •27. Понятие массива. Индекс и элемент массива.
- •28. Одномерные массивы.
- •29. Многомерные массивы.
- •30. Имена и объявления массивов.
- •32. Циклические структуры.
- •33. Оператор for. Алгоритм работы цикла for
- •33. Оператор while. Алгоритм работы цикла while.
- •35. Оператор do … while. Алгоритм работы цикла.
- •36. Вложенные циклы.
- •37. Управление циклами. Операторы break и continue.
- •38. Оператор goto
- •39. Бесконечные циклы и их организация
18. Определение переменной. Требования к именам переменных.
Переменная в языке си - это именованная область памяти, в которой содержится определенное значение.
Переменная, или объект – это именованная область памяти, к которой мы имеем доступ из программы; туда можно помещать значения и затем извлекать их. Каждая переменная С++ имеет определенный тип, который характеризует размер и расположение этой области памяти, диапазон значений, которые она может хранить, и набор операций, применимых к этой переменной. Вот пример определения пяти объектов разных типов:
int student_count;
double salary;
bool on_loan;
strins street_address;
char delimiter;
Переменная, как и литерал, имеет определенный тип и хранит свое значение в некоторой области памяти. Адресуемость – вот чего не хватает литералу. С переменной ассоциируются две величины:
собственно значение, или r-значение (от read value – значение для чтения), которое хранится в этой области памяти и присуще как переменной, так и литералу;
значение адреса области памяти, ассоциированной с переменной, или l-значение (от location value – значение местоположения) – место, где хранится r-значение; присуще только объекту.
19. Типы числовых переменных.
целочисленные типы данных
short int 2 -32 768 / 32 767
unsigned short int 2 0 / 65 535
int 4 -2 147 483 648 / 2 147 483 647
unsigned int 4 0 / 4 294 967 295
long int 4 -2 147 483 648 / 2 147 483 647
unsigned long int 4 0 / 4 294 967 295
типы данных с плавающей точкой
float 4 -2 147 483 648.0 / 2 147 483 647.0
long float 8 -9 223 372 036 854 775 808 .0 / 9 223 372 036 854 775 807.0
double 8 -9 223 372 036 854 775 808 .0 / 9 223 372 036 854 775 807.0
20. Операции отношения, их приоритет.
Язык С имеет ровно шесть операции отношения. Почему их так называют? Дело в том, что обычно относительно двух величин, например, величины А и величины В, можно с определенностью сказать, что друг по отношению к другу они: или равны, то есть находятся в отношении равенства А=В, или не равны, то есть находятся в отношениях неравенства А не = В. Но тогда в последнем случае можно уточнять и думать уже о том, какая из этих двух величин больше и какая меньше. Тут может быть одна из двух возможностей: либо А<В, либо А>В. Иногда еще рассматривают такое отношение, в котором есть доля неопределенности, например, когда говорят, что А<=В, либо, когда А>=В. Сведем эти соотношения между двумя величинами в одну таблицу. Получим следующее: "<" - меньше.
"<=" - меньше или равно.
">" - больше.
">=" - больше или равно.
"==" - равно.
"!=" - не равно.
Таким образом, А по отношению к В может быть: либо меньше, либо меньше или равно; либо больше, либо больше или равно; либо равно, либо не равно. Другого нам просто не дано.
Операции отношения используются в условных выражениях. Например, простейшие условия, которые не содержат логических операций, это следующие: "a<0", "1998>2003", "b==B", "C!=D" и так далее.
21. Булевы (логические) операторы. Приоритет логических операций.
В С++ существует три логические операции:
Логическая операция И &&, нам уже известная;
Логическая операция ИЛИ ||;
Логическая операция НЕ ! или логическое отрицание.
Логические операции образуют сложное (составное) условие из нескольких простых (два или более) условий. Эти операции упрощают структуру программного кода в несколько раз. Да, можно обойтись и без них, но тогда количество ифов увеличивается в несколько раз, в зависимости от условия. В следующей таблице кратко охарактеризованы все логические операции в языке программирования С++, для построения логических условий.
В таблице показаны основные операции в С++, их приоритет выполнения и ассоциативность.
Приоритет |
Операция |
Ассоциативность |
Описание |
1 |
|
слева направо |
унарная операция разрешения области действия |
|
[] |
|
операция индексирования |
|
() |
|
круглые скобки |
|
. |
|
обращение к члену структуры или класса |
|
-> |
|
обращение к члену структуры или класса через указатель |
2 |
++ |
слева направо |
постфиксный инкремент |
|
— |
|
постфиксный декремент |
3 |
++ |
справа налево |
префиксный инкремент |
|
— |
|
префиксный декремент |
4 |
* |
слева направо |
умножение |
|
/ |
|
деление |
|
% |
|
остаток от деления |
5 |
+ |
слева направо |
сложение |
|
- |
|
вычитание |
6 |
» |
слева направо |
сдвиг вправо |
|
« |
|
сдвиг влево |
7 |
< |
слева направо |
меньше |
|
<= |
|
меньше либо равно |
|
> |
|
больше |
|
>= |
|
больше либо равно |
8 |
== |
слева направо |
равно |
|
!= |
|
не равно |
9 |
&& |
слева направо |
логическое И |
10 |
II |
слева направо |
логическое ИЛИ |
11 |
?: |
справа налево |
условная операция (тернарная операция) |
12 |
= |
справа налево |
присваивание |
|
*— |
|
умножение с присваиванием |
|
/= |
|
деление с присваиванием |
|
%= |
|
остаток отделения с присваиванием |
|
+= |
|
сложение с присваиванием |
|
-= |
|
вычитание с присваиванием |
13 |
, |
слева направо |
запятая |