- •1.1 Арифметические операторы.
- •1.3. Логические операторы
- •1.6. Выражения
- •1.7. Преобразование типов
- •2.6. Вложение else if
- •2.7. Инструкция switch
- •3.1. Оператор цикл for
- •3.4. Цикл do-while
- •3.3. Цикл while
- •4.1. Алгоритм Евклида
- •4.2. Алгоритмы обмена чисел
- •4.3.А. Для заданного натурального числа определить количество единичных бит в его представлении.
- •4.3.B. Найти количество повторений каждой цифры у заданного натурального числа
- •4.3.C. Перевод из 10-й с/с в 2..9
- •5.1. Объявление и определение функций .
- •5.2. Функция main()
- •5.3. Функция main() с параметрами
- •5.4. Обмен данными между функциями. Возвращаемое значение
- •5.5. Параметры функции
- •5.6.A. Функция перевода числа в различные нумерации
- •5.6.C. Поиск количества единичных бит в двоичном представлении числа.
- •5.6.E. Вычисление n!
- •5.6.F. Вычисление сочетаний из n по m без факториала
- •7. Функции форматированного вывода
- •7. Функции форматированного вывода (продолжение)
- •8. Функции форматированного ввода
- •9. Функции общего назначения
- •Void srand(unsigned int );
- •11.1. Объявление и инициализация массива
- •11.3. Ввод-вывод массивов
- •11.4 Операции над элементами массива
- •11.5. Передача массивов функциям
- •11.6. Обработка одномерных и двумерных массивов
- •11.7. Поиск элемента с заданными характиристиками
- •12.1. Переменные-указатели
- •12.2. Oператоры для работы с указателями.
- •12.3. Арифметические действия с указателями.
- •12.4. Динамическое распределение памяти
- •12.5. Указатели и массивы
- •12.6. Массивы-параметры
- •12.7. Указатели на константы и константные указатели.
- •12.8. Указатели на функции.
- •12.9. Алгоритмы преобразование и перестановки .
- •12.10. Алгоритмы расширение и сжатие массивов
- •13.1Сортировка пузырьком
- •13.2Сортировка Вставками
- •13.3Сортировка выбором
- •13.4Линейный поиск
- •Int sprintf(char *buffer, const char *format, ...);
- •15 Цели введения новых типов:
- •Int fclose(file* stream);
- •Int feof(file* stream);
- •18. Функции и разработка программ
- •18.1. Функции с переменным количеством параметров
- •18.2. Глобальные и локальные переменные, область видимости и время существования.
- •18.3. Спецификаторы классов памяти.
- •18.4. Компоновка нескольких файлов в одну программу
- •18.5. Директивы препроцессора
- •Задача Иосифа Флавия
- •Задача о рюкзаке
- •Классическая архитектура компьютера
- •Процессор - программно-управляемое устройство
- •Регистры, назначение и характеристика
- •Xchg приемник, источник
- •23Команды сравнения:
- •25 Команды организации циклов:
- •26 Команды пересылки:
- •27 Логические команды:
- •28 Команды обработки строк
- •Префиксы повторения
- •29.1. Регистры сопроцессора
- •29.2. Команды пересылки данных
- •29.3. Арифметические команды
- •29.4. Команды сравнения чисел
- •29.5. Трансцендентные команды
- •29.6. Управляющие команды
- •30.1. Команда call
- •23.6. Внешние подпрограммы
- •23.7.Компилятор masm
1.6. Выражения
Программа оперирует с данными. Числа можно складывать, вычитать, умножать, делить. Из разных величин можно составлять выражения, результат вычисления которых – новая величина.
Выражение, после которого стоит точка с запятой – это оператор-выражение. Его смысл состоит в том, что компьютер должен выполнить все действия, записанные в данном выражении, иначе говоря, вычислить выражение.
Выражения – это переменные, функции и константы, называемые операндами, объединенные знаками операций. Операции могут быть унарными , например, минус; могут быть бинарными. Если в выражении встречаются переменные и константы разных типов, то все они приводятся к типу с наибольшим диапазоном значений.
1.7. Преобразование типов
Если в выражении встречаются переменные и константы разных типов, то все они приводятся к типу с наибольшим диапазоном значений.
Для явного преобразования типа выражения используется оператор: (<тип>) <выражение> где в скобках – один из простых типов данных. (int) (1.5 / 0.3); // тип int (float) (1.5 / 0.3); // тип float
В выражении приоритет преобразования типов данных приравнивается к приоритету унарных операторов.
2.1. Инструкция break
Прекращает работу блока switch и циклов.
2.2. Инструкция continue.
Инструкция continue вынуждает ближайший содержащий ее цикл (for, while или do-while) начать следующий шаг итерации. Операторы, стоящие в цикле после continue, не выполняются.
2.3. Инструкция goto.
Инструкция goto позволяет реализовать передачу программного управления из одной точки программы в другую, отмеченную меткой перехода. Метка перехода состоит из идентификатора и завершающего двоеточия, как и метки switch-оператора.
Конструкция имеет синтаксис: goto метка;
2.4. Выход из программы exit()
С помощью функции ехit() можно прервать выполнение программы в любом месте. Такой выход из программы используется при возникновении серьезной ошибки, которая делает дальнейшее выполнение программы бессмысленным или невозможным.
2.5. Инструкция if …else.
В некоторых ситуациях необходимо указать не только оператор (блок операторов), выполняемый в случае получения результата true при вычислении условия, но и оператор (блок операторов), выполняемый при получении результата false.
Синтаксис инструкции выбора в этом случае будет следующим: if (условие) оператор; else оператор;
В качестве условия может использоваться любое выражение арифметического или приводимого к нему типа (например, целое число, арифметическое выражение, логическое выражение, выражение сравнения или вызов функции с соответствующим типом возвращаемого значения).
В качестве оператора может выступать отдельный оператор или блок операторов. Отдельный оператор всегда должен заканчиваться точкой с запятой (ограничителем операторов). Если используется блок операторов, то он должен быть заключен в фигурные скобки.
2.6. Вложение else if
С помощью ключевых слов if и else можно составлять так называемые else-if-конструкции, которые могут осуществить проверку сразу нескольких выражений, не используя сложные условия . if (условие) оператор; else if (условие) оператор; else if (условие) оператор; … else оператор;
Условия проверяются в той последовательности, в которой они перечислены в программном коде.
Если результатом одного из условий является true (1), то выполняется следующий за условием оператор и проверка оставшихся elseif-условий не осуществляется.
Если ни одно из проверенных условий не дало в результате значения true, то выполняются операторы, относящиеся к последнему else.
Последняя else-конструкция является необязательной, следовательно, она может отсутствовать, если в программе не предусмотрено выполнения какого-либо действия по умолчанию.