Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
lektsii_po_si.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
71.13 Кб
Скачать

Лекция №1.

Модули.

Заголовочный файл — в языках программирования Си файл, содержащий определения типов данных, структуры, прототипы функций, перечисления, макросы предпроцессора. Имеет по умолчанию расширение .h. Заголовочный файл используется путём включения его текста в данный файл директивой препроцессора #include "Название Заголовочного Файла.h".

Например: #include<cmath> - библиотека для функций типа tan, sin и т.п., #include<time.h> - библиотека для работы с датой и временем и т.д.

#define – создает символическую константу.

Например: #define __ N 5 – найдет все N и заменит их на 5.

Функция main () – это главная функция, которая возвращает целое число.

Main () { - начало

Return 0;

} - конец

Типы данных.

Тип

байт

Диапазон принимаемых значений

целочисленный (логический) тип данных

bool

1

0   /   255

целочисленный (символьный) тип данных

char

1

0   /   255

 целочисленные типы данных

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

Логические операции.

Операции

Обозначение 

Условие

Краткое описание

И

&&

a == 3 && b > 4

Составное условие истинно, если истинны оба простых условия

ИЛИ

||

a == 3 || b > 4

Составное условие истинно, если истинно, хотя бы одно из простых условий

НЕ

!

!( a == 3)

Условие истинно, если a не равно 3

Операции над числами.

1.() Вызов функции Слева направо

2. [] Выделение элемента массива

3. ! Логическое отрицание Справа налево

4.- Изменение знака

5.++ Увеличение на единицу (increment)

6.-- Уменьшение на единицу (decrement)

7.~ Побитовое отрицание (complement)

8.& Побитовая операция И Слева направо

9.| Побитовая операция ИЛИ

10.^ Побитовая операция исключающее ИЛИ (eXclude OR)

11.<< Сдвиг влево

12.>> Сдвиг вправо

13.* Умножение Слева направо

14./ Деление

15.% Деление по модулю

16.+ Сложение Слева направо

17.- Вычитание

18.< Меньше, чем Слева направо

19.<= Меньше или равно

20.> Больше, чем

21.>= Больше или равно

22.== Равно

23.!= Не равно

24.|| Логическая операция ИЛИ Слева направо

25.&& Логическая операция И Слева направо

26.= Присваивание Справа налево

27.+= Сложение с присваиванием

28.-= Вычитание с присваиванием

29.*= Умножение с присваиванием

30./= Деление с присваиванием

31.%= Деление по модулю с присваиванием

32.>>= Сдвиг вправо с присваиванием

33.<<= Сдвиг влево с присваиванием

34.&= Побитовое И с присваиванием

35.|= Побитовое ИЛИ с присваиванием^= Исключающее ИЛИ с присваиванием, Запятая Слева направо

Пример:

#include <stdio.h>

int main(void) {

int a = 5, b =10, c = 25, d = 100, result;

printf("%d + %d = %d\n",  a, b, a + b);

printf("%d - %d = %d\n",  a, b, a - b);

printf("%d / %d = %d\n",  d, c, d / c);

printf("%d * %d = %d\n",  c, a, c * a);

printf("%d %% %d = %d\n", c, b, c % b);

result = (c + d) / a * b;

printf("result is: %d\n", result);

}

Результат:

5 + 10 = 15 5 — 10 = -5 100 / 25 = 4 25 * 5 = 125 25 % 10 = 5 result is: 250

Циклы.

Цикл — многократное прохождение по одному и тому же коду программы. Циклы необходимы программисту для многократного выполнения одного и того же кода, пока истинно какое-то условие. Если условие всегда истинно, то такой цикл называется бесконечным, у такого цикла нет точки выхода.

В языке программирования С++ существуют такие циклы:

  • цикл for

  • цикл while

  • цикл do  while

1)for- Тело цикла будет выполняться до тех пор, пока условие будет истинно(т. е. true).

// форма записи оператора цикла for:

 for (/*выражение1*/; /*выражение2*/; /*выражение3*/ )

{

/*один оператор или блок операторов*/;

}

Рассмотрим подробно три выражения записанные в круглых скобках цикла for. Выражение 1 - объявление (и) или инициализация, ранее объявленной, переменной-счетчика, которая будет отвечать за истинность условия в цикле for. Пример: int counter = 0; // отсюда видно, что была объявлена переменная counter типа int и инициализирована значением 0

Выражение 2 - это условие продолжения цикла for, оно проверяется на истинность.

counter < 10; // условие истинно пока count строго меньше десяти!

Выражение 3 изменяет значение переменной-счетчика. Без выражения 3 цикл считается бесконечным, так как изменение содержимого переменной count выполняться не будет, и если изначально условие было истинным, то цикл будет бесконечным, иначе программа даже не войдет в цикл

Выражения 1, 2, 3 отделяются друг от друга обязательными разделителями, точкой с запятой. Тело цикла обрамляется фигурными скобочками, если тело цикла состоит из одного оператора ,то фигурные скобочки не нужны. Под изменением значения переменной подразумевается уменьшение или приращение значения , например:

for ( int counter = 0; counter < 15; counter++) // выполняется приращение переменной counter с шагом 1 от 0 до 15

2)whileцикл, повторяющий одно и то же действие, пока условие продолжения цикла while остаётся истинным.

// форма записи цикла while

while (/*условие продолжения цикла while*/)

{

/*блок операторов*/;

/*управление условием*/;

}

3) Цикл do while отличается от цикла while тем, что в do while сначала выполняется тело цикла, а затем проверяется условие продолжения цикла. Из-за такой особенности do while называют циклом с постусловием. Таким образом, если условие do while заведомо ложное, то хотя бы один раз блок операторов в теле цикла do while выполнится.

// форма записи оператора цикла do while:

do // начало цикла do while

{

/*блок операторов*/;

}

while (/*условие выполнения цикла*/); // конец цикла do while

Условные операторы:

Имеются две формы условных операторов:

if (выражение) оператор

if (выражение) оператор else оператор

В обоих случаях вычисляется выражение и, если оно отлично от нуля, то выполняется первый подоператор. Во втором случае, если выражение равно нулю, выполняется второй подоператор.

Лекция №2.

Используется при PRINTF.

d - аргумент преобразуется к десятичному виду;

o - аргумент преобразуется в беззнаковую восьмеричную форму (без лидирующего нуля);

x - аргумент преобразуется в беззнаковую шестнадцатеричную форму (без лидирующих 0х);

u - аргумент преобразуется в беззнаковую десятичную форму;

c - аргумент рассматривается как отдельный символ;

s - аргумент является строкой: символы строки печатаются до тех пор, пока не будет достигнут нулевой символ или не будет напечатано количество символов, указанное в спецификации точности;

e - аргумент, рассматриваемый как переменная типа float или double, преобразуется в десятичную форму в виде [-]m.nnnnnne[+-]хх, где длина строки из n определяется указанной точностью. Точность по умолчанию равна 6;

f - аргумент, рассматриваемый как переменная типа float или double, преобразуется в десятичную форму в виде [-]mmm.nnnnn, где длина строки из n определяется ука занной точностью. Точность по умолчанию равна 6.

g - используется или формат %e или %f, какой короче; незначащие нули не печатаются.

Scanf (“%c %d %f ”,& ch, &I, &fl) – требует не имя переменной а адрес, где &- операция взятия адреса.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]