
- •1. Понятие алгоритма, способы записи алгоритма.
- •2. Графическая запись алгоритма (Блок-схема) пример
- •3. Диаграмма Несси-Шнайдермана. Пример.
- •4.Метод проектирования сверху-вниз. Примеры использования.
- •5.Стандартные библиотеки c. Функции printf, scanf.
- •6.Базовые типы языка Си. Объявление и инициализация переменных. Примеры.
- •7.Квалификаторы. Назначение. Примеры.
- •8.Константы в языке Си. Различные способы определения констант. Примеры.
- •9.Операции в языке Си. Примеры.
- •10.Выражения. Правила приведения типов в языке Си. Примеры.
- •11.Операторы инкремента, декремента, присваивания. Примеры.
- •12.Условное выражение в языке Си. Примеры.
- •16.Циклы в языке Си. Синтаксис. Примеры.
- •17.Цикл for. Синтаксис. Примеры.
- •18.Инструкция break и continue. Примеры.
- •19.Структура программы в языке Си.
- •20.Функции в языке Си. Фактические, формальные параметры. Способы передачи параметров. Примеры.
9.Операции в языке Си. Примеры.
В соответствии с количеством операндов, которые используются в операциях, они делятся на унарные, бинарные и тренарные.
Унарные: ++(увеличение на 1), --(уменьшение на 1), sizeof(размер), ~(поразрядное отрицание), !(логическое отрицание), -(унарный минус), (унарный плюс), &(взятие адреса), *(разадресация), new(выделение памяти), delete(освобождение памяти), (type)(преобразование типа). Бинарные и тренарные: *(умножение), /(деление), %(остаток от деления), +(сложение), -(вычитание), <<(сдвиг влево), >>(сдвиг вправо), <(меньше), >(больше), <=(меньше или равно), >=(больше или равно), ==(равно), !=(не равно); &(поразрядное И), &&(логическое И), ^(поразрядное исключающее ИЛИ), | (поразрядное ИЛИ), ||(ИЛИ); ? : (условная операция), =(присваивание), *=(умножение с присваиванием), /=(деление с присваиванием), %=(остаток от деления с присваиванием), +=(сложение с присваиванием), -=(вычитание с присваиванием),
10.Выражения. Правила приведения типов в языке Си. Примеры.
Выражения состоят из операндов, знаков операций, скобок и используются для вычисления некоторого значения определенного типа. Каждый операнд в свою очередь является выражением или одним из его частных случаев – константой или переменной.
(f+23)*67. Операции выполняются в соответствии с приоритетами. Для изменения порядка выполнения операции используются круглые скобки. Если в одном выражении записано несколько операций одинакового приоритета, унарные операции, условная операция и операция присваивания выполняются справа налево – остальные слева направо. Результат вычисления выражения характеризуется значением и типом. В выражение могут входить операнды различных типов .Если операнды имеют один тип то и результат выполнения выражения будет иметь тот же тип. Если операнды разного типа, то перед вычислением выполняются преобразования типов по определенным правилам, обеспечивающих преобразование более коротких типов в более длинные для сохранения значимости и точности. Преобразования бывают двух типов: 1) изменяющие внутреннее представление величин (с потерей точности или без потери точности); 2) изменяющие только интерпретацию внутреннего представления. К первому типу относятся преобразования целого числа в вещественное (без потери точности) и наоборот (возможно, с потерей точности), ко второму – преобразование знакового целого к беззнаковому. В любом случае величины типов char, signed char, unsigned char, short int и unsigned short int преобразуются в тип int, если он может представить все значения или в unsigned int в противном случае. После этого операнды преобразуются к типу наиболее длинному из них и он используется как тип результата.
11.Операторы инкремента, декремента, присваивания. Примеры.
Инкремент a++ - увеличение на 1. Декремент a-- - уменьшение на 1. Эти операции имеют две формы записи: префиксную и постфиксную. В префиксной форме сначала изменяется операнд, а затем его значение становится результирующим значением выражения, а в постфиксной форме значением выражения является исходное значение операнда, после чего он изменяется. Операндом инкремента является значение L-value. Так обозначается любое выражение, адресующее некоторый участок памяти, в который можно занести значение. Название произошло т операции присваивания, поскольку именно её левая часть определяет в какую область памяти будет занесен результат операции. Переменная – частный случай L-значения.
Пример.
#include <stdio.h>
Int main{
Int x=3, y=3;
printf (“Значение перфиксного выражения: %d\n”, ++x ); значение префиксного выражения:4;
printf (“Значение постфиксного выражения:%d\n”, y++); значение постфиксного выражения:3;
printf (“Значение х после приращения:%d\n”, x); значение х после приращения: 4;
printf (“Значение у после приращения:%d\n”, y); значение у после приращения:4
return 0;
}