Similar presentations:
Обзор языка Си. Лекция 16
1.
Основы алгоритмизации и программированиеФИСТ УлГТУ 1 курс
Власенко Олег Федосович
SimbirSoft
Лекция 16
Обзор языка Си
Завершение курса
2.
Операции Си3.
Основные операции (Лекция 2)Источник: https://codernet.ru/books/c_plus/programmirovanie_na_s_dlya_nachinayushhix_3-e_izd/
4.
Приоритет операций Сиhttps://pvs-studio.ru/ru/blog/terms/0064/ - 17 уровней приоритетов
https://en.wikipedia.org/wiki/Operators_in_C_and_C%2B%2B#Operator_pre
cedence – 18
http://microsin.net/programming/arm/c-operators-precedence.html – 18, но
по другому
5.
Операции СиПриоритет выполнения операций C и C++ http://microsin.net/programming/arm/c-operators-precedence.html
6.
Операции Си (1)Приоритет
Оператор
1
::
самый высокий
Описание
Оператор определения контекста переменных
(scope resolution, только для C++).
Ассоциативность
Отсутствует
7.
Операции Си (2)Приоритет
2
Оператор
Описание
++
-()
[]
Постинкремент (Suffix increment).
.
Выбор элемента структуры по ссылке.
->
Выбор элемента структуры по указателю.
typeid()
Информация о типе по время выполнения (Run-time
type information, только для C++, см. typeid).
const_cast
Приведение типа (Type cast, только для C++ only,
см. const_cast).
dynamic_cast
Приведение типа (только для C++, см. dynamic_cast).
reinterpret_cast
Приведение типа (Type cast, только для C++,
см. reinterpret_cast).
static_cast
Приведение типа (Type cast, только для C++,
см. static_cast).
Постдекремент (Suffix decrement).
Вызов функции.
Индексация в массиве.
Ассоциативность
Слева - направо
8.
Операции Си (3)Приоритет
Оператор
++
-+
!
3
Описание
Прединкремент (Prefix increment).
Преддекремент (Prefix decrement).
Унарный плюс.
Унарный минус.
Логическое отрицание (NOT).
~
Побитное отрицание (Bitwise NOT,
дополнение до единицы, One's Complement).
(type)
Преобразование типа (Type cast).
*
Выборка значения по ссылке (Indirection,
dereference).
&
Операция взятия адреса (получение
указателя).
sizeof
Получение размера объекта указанного типа
(структуры, переменной и т. п.).
new, new[]
Динамическое выделение памяти под объект
из кучи, создание объекта (только для C++).
delete, delete[]
Динамическое освобождение памяти, ранее
выделенной под объект, удаления объекта
(только для C++).
Ассоциативность
Справа - налево
9.
Операции Си (4)Приоритет
4
5
Оператор
.*
Указатель на член (только для C++).
->*
Указатель на член (только для C++).
*
/
Умножение.
%
6
7
8
Описание
+
<<
>>
<
<=
>
>=
Ассоциативность
Слева - направо
Слева - направо
Деление.
Взятие по модулю числа (Modulo, получение остатка от
деления).
Сложение.
Слева - направо
Вычитание.
Побитный сдвиг влево (Bitwise left shift).
Слева - направо
Побитный сдвиг вправо (Bitwise right shift).
Меньше чем...
Меньше или равно...
Больше чем...
Больше или равно...
Слева - направо
10.
Операции Си (5)Приоритет
Оператор
10
==
!=
&
11
^
12
|
&&
||
?:
9
13
14
15
Описание
Оператор определения равенства (Equal to).
Ассоциативность
Слева - направо
Оператор определения неравенства (Not equal to)
Побитная операция И (Bitwise AND)
Слева - направо
Побитная операция Исключающее ИЛИ (Bitwise XOR,
exclusive or).
Слева - направо
Побитная операция ИЛИ (Bitwise OR, inclusive or).
Слева - направо
Логическая операция И (AND).
Слева - направо
Логическая операция ИЛИ (OR).
Слева - направо
Тернарный оператор (Ternary conditional, см. ?:).
Справа - налево
11.
Операции Си (6)Приоритет
16
17
Оператор
=
+=
-=
*=
/=
%=
<<=
>>=
&=
^=
|=
Описание
Прямое присваивание.
Ассоциативность
Справа - налево
Присваивание со сложением.
Присваивание с вычитанием.
Присваивание с умножением.
Присваивание с делением.
Присваиванием с взятием остатка от деления.
Присваивание со побитным сдвигом влево.
Присваивание с побитным сдвигом вправо.
Присваивание с побитным AND.
Присваивание с побитным XOR.
Присваивание с побитным OR.
throw
Оператор генерации исключения (Throw operator,
exceptions throwing, только для C++).
Справа - налево
,
Запятая (Comma)
Слева - направо
18
самый низкий
12.
Тернарная операцияif (Cond) {
Res = Val1;
}
else {
Res = Val2;
}
Res = Cond ? Val1 : Val2;
int opening_time = (day == SUNDAY) ? 12 : 9;
int opening_time;
if (day == SUNDAY)
opening_time = 12;
else
opening_time = 9;
Тернарная условная операция
https://ru.wikipedia.org/wiki/%D0%A2%D0%B5%D1%80%D0%BD%D0%B0%D1%80%D0%BD%D0%B0%D1%8F_%D1
%83%D1%81%D0%BB%D0%BE%D0%B2%D0%BD%D0%B0%D1%8F_%D0%BE%D0%BF%D0%B5%D1%80%D0%B
0%D1%86%D0%B8%D1%8F
13.
Тернарная операция - примерыmin = (a < b) ? a : b;
sprintf(
Title,
"%s %s",
tv_system == TV_PAL ?
"PAL" :
"SECAM",
tv_input ?
Tv_Name[tv_input - 1] :
"TEST"
);
int binDigit = num % 2;
char binChar = binDigit == 0 ? '0' : '1’;
14.
Инкремент/Декрементvoid main() {
int a, b;
// Инкремент / Декремент
a = 10;
b = 20;
printf("a=%d b=%d\n", a, b);
// Постфиксный инкремент
b = a++;
printf("a=%d b=%d\n", a, b);
// Постфиксный декремент
b = a--;
printf("a=%d b=%d\n", a, b);
// Префиксный инкремент
b = ++a;
printf("a=%d b=%d\n", a, b);
// Префиксный декремент
b = --a;
printf("a=%d b=%d\n", a, b);
}
15.
Инкремент/Декремент - Задачкиint c, d, e;
c = 100;
d = 200;
e = c++ + ++d;
printf("%d %d %d\n", c, d, e);
c = 100;
d = 200;
e = c + + + + + d;
printf("%d %d %d\n", c, d, e);
c = 100;
d = 200;
e = c+++++d;
printf("%d %d %d\n", c, d, e);
16.
Инкремент/Декремент - Задачкиint c, d, e;
c = 100;
d = 200;
e = c++ + ++d; // инкремент, сложение
printf("%d %d %d\n", c, d, e);
и инкремент
c = 100;
d = 200;
e = c + + + + + d; // 1 сложение и 4 унарных плюса
printf("%d %d %d\n", c, d, e);
c = 100;
d = 200;
e = c+++++d; // ОШИБКА! Инкремент на инкремент - УПС
printf("%d %d %d\n", c, d, e);
17.
Инкремент/Декремент - Задачкиint c, d, e;
int c, d, e;
c = 100;
d = 200;
e = c++ + ++d;
printf("%d %d %d\n", c, d, e);
c = 100;
d = 200;
e = (c++) + (++d);
printf("%d %d %d\n", c, d, e);
c = 100;
d = 200;
e = c + + + + + d;
printf("%d %d %d\n", c, d, e);
c = 100;
d = 200;
e = c + (+(+(+(+d))));
printf("%d %d %d\n", c, d, e);
c = 100;
d = 200;
e = c+++++d;
printf("%d %d %d\n", c, d, e);
c = 100;
d = 200;
e = ((c++)++) + d;
printf("%d %d %d\n", c, d, e);
18.
Инкремент/Декремент - Задачкиint c, d, e;
c = 100;
d = 200;
e = c-- - --d; // декремент, вычитание и декремент
printf("%d %d %d\n", c, d, e);
c = 100;
d = 200;
e = c - - - - - d; // 1 вычитание и 4 унарных минуса
printf("%d %d %d\n", c, d, e);
c = 100;
d = 200;
e = c-----d; // ОШИБКА
printf("%d %d %d\n", c, d, e);
19.
Инкремент/Декремент - Задачкиint c, d, e;
int c, d, e;
c = 100;
d = 200;
e = c-- - --d;
printf("%d %d %d\n", c, d, e);
c = 100;
d = 200;
e = (c--)-(--d);
printf("%d %d %d\n", c, d, e);
c = 100;
d = 200;
e = c - - - - - d;
printf("%d %d %d\n", c, d, e);
c = 100;
d = 200;
e = c - (-(-(-(-d))));
printf("%d %d %d\n", c, d, e);
c = 100;
d = 200;
e = c-----d;
printf("%d %d %d\n", c, d, e);
c = 100;
d = 200;
e = ((c--)--) - d;
printf("%d %d %d\n", c, d, e);
20.
lvalue и rvaluelvalue = rvalue;
e = c-----d;
Идея l-значений и r-значений происходит из языков программирования с операторами
присваивания, в которых для значений слева (left) и справа (right) от оператора используется
различный режим вычисления.
l-значение указывает на объект, который сохраняется и за пределами одного выражения.
r-значение — это временное значение, которое не сохраняется за пределами
использующего его выражения.
«Значение (информатика)»
https://ru.wikipedia.org/wiki/%D0%97%D0%BD%D0%B0%D1%87%D0%B5%D0%BD%D0%B8%D0%
B5_(%D0%B8%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%82%D0%B8%D0%BA
%D0%B0)
21.
Побитовые операцииhttps://foxford.ru/wiki/informatika/bitovye-operatsii-v-s
Области применения:
- Шифрование, хэширование и т.п. преобразования
- Графика – работа с масками
- Работа с флагами/отдельными битами регистра. Пример: Регистр флагов в
«низкоуровневом программирование»
- И др.
22.
Побитовые операцииA
~A
0
1
1
0
A
B
A|B
A&B
A^B
0
0
0
0
0
0
1
1
0
1
1
0
1
0
1
1
1
1
1
0
23.
Побитовые операции16 CC
2 CC
A
~A
0
0000
0
1
1
0001
1
0
2
0010
3
0011
4
0100
5
0101
6
0110
7
0111
8
1000
9
1001
A
1010
B
1011
C
1100
D
1101
E
1110
F
1111
unsigned char a, b;
a = 0x03; // 0000 0011
b = ~a;
// 1111 1100
24.
Побитовые операцииA
B
A|B
A&B
A^B
16 CC
2 CC
0
0
0
0
0
0
0000
0
1
1
0
1
1
0001
1
0
1
0
1
2
0010
1
1
1
1
0
3
0011
4
0100
5
0101
6
0110
7
0111
8
1000
9
1001
A
1010
B
1011
C
1100
D
1101
E
1110
F
1111
unsigned char a, b;
a = 0x66;
b = a & 0x0F;
// 0x66 = 0110 0110
// 0x0F = 0000 1111
// b
= 0000 0110
25.
Побитовые операцииA
B
A|B
A&B
A^B
16 CC
2 CC
0
0
0
0
0
0
0000
0
1
1
0
1
1
0001
1
0
1
0
1
2
0010
1
1
1
1
0
3
0011
4
0100
5
0101
6
0110
7
0111
8
1000
9
1001
A
1010
B
1011
C
1100
D
1101
E
1110
F
1111
unsigned char a, b;
a = 0x66;
b = a | 0x0F;
// 0x66 = 0110 0110
// 0x0F = 0000 1111
// b
= 0110 1111
26.
Побитовые операцииA
B
A|B
A&B
A^B
16 CC
2 CC
0
0
0
0
0
0
0000
0
1
1
0
1
1
0001
1
0
1
0
1
2
0010
1
1
1
1
0
3
0011
4
0100
5
0101
6
0110
7
0111
8
1000
9
1001
A
1010
B
1011
C
1100
D
1101
E
1110
F
1111
unsigned char a, b;
a = 0x66;
b = a ^ 0x0F;
// 0x66 = 0110 0110
// 0x0F = 0000 1111
// b
= 0110 1001
27.
Побитовые операцииunsigned char a, b;
a = 0x3A;
b = a << 2;
// 0x3A = 0011 1010
// b
= 1110 1000
16 CC
2 CC
0
0000
1
0001
2
0010
3
0011
4
0100
5
0101
6
0110
7
0111
8
1000
9
1001
A
1010
B
1011
C
1100
D
1101
E
1110
F
1111
28.
Побитовые операцииunsigned char a, b;
a = 0x3A;
b = a >> 3;
// 0x3A = 0011 1010
// b
= 0000 0111
16 CC
2 CC
0
0000
1
0001
2
0010
3
0011
4
0100
5
0101
6
0110
7
0111
8
1000
9
1001
A
1010
B
1011
C
1100
D
1101
E
1110
F
1111
29.
Операции СиПриоритет
2
Оператор
Описание
++
-()
[]
Постинкремент (Suffix increment).
.
Выбор элемента структуры по ссылке.
->
Выбор элемента структуры по указателю.
Постдекремент (Suffix decrement).
Вызов функции.
Индексация в массиве.
struct Str {
int a;
char b[5];
};
void f(struct Str * str) {
str->a++;
str->b[0] = '9’;
str->b[1]--;
}
void main() {
struct Str st = {1, "11"};
printf("(%d,%s), ", st.a, st.b);
f(&st);
printf("(%d,%s), ", st.a, st.b);
}
Ассоциативность
Слева - направо
30.
Операции СиПриоритет
Оператор
++
-+
!
Описание
Прединкремент (Prefix increment).
Преддекремент (Prefix decrement).
Унарный плюс.
Унарный минус.
Логическое отрицание (NOT).
~
Побитное отрицание (Bitwise NOT,
дополнение до единицы, One's Complement).
(type)
Преобразование типа (Type cast).
*
Выборка значения по ссылке (Indirection,
dereference).
&
Операция взятия адреса (получение
указателя).
sizeof
Получение размера объекта указанного типа
(структуры, переменной и т. п.).
3
Ассоциативность
Справа - налево
31.
Операции СиПриоритет
5
Оператор
*
/
%
6
7
8
+
<<
>>
<
<=
>
>=
Описание
Умножение.
Ассоциативность
Слева - направо
Деление.
Взятие по модулю числа (Modulo, получение остатка от
деления).
Сложение.
Слева - направо
Вычитание.
Побитный сдвиг влево (Bitwise left shift).
Слева - направо
Побитный сдвиг вправо (Bitwise right shift).
Меньше чем...
Меньше или равно...
Больше чем...
Больше или равно...
Слева - направо
32.
Операции СиПриоритет
Оператор
10
==
!=
&
11
^
12
|
&&
||
?:
9
13
14
15
Описание
Оператор определения равенства (Equal to).
Ассоциативность
Слева - направо
Оператор определения неравенства (Not equal to)
Побитная операция И (Bitwise AND)
Слева - направо
Побитная операция Исключающее ИЛИ (Bitwise XOR,
exclusive or).
Слева - направо
Побитная операция ИЛИ (Bitwise OR, inclusive or).
Слева - направо
Логическая операция И (AND).
Слева - направо
Логическая операция ИЛИ (OR).
Слева - направо
Тернарный оператор (Ternary conditional, см. ?:).
Справа - налево
33.
Операции СиПриоритет
16
Оператор
Описание
=
+=
-=
*=
/=
%=
<<=
>>=
&=
^=
|=
Прямое присваивание.
,
Запятая (Comma)
Ассоциативность
Справа - налево
Присваивание со сложением.
Присваивание с вычитанием.
Присваивание с умножением.
Присваивание с делением.
Присваиванием с взятием остатка от деления.
Присваивание со побитным сдвигом влево.
Присваивание с побитным сдвигом вправо.
Присваивание с побитным AND.
Присваивание с побитным XOR.
Присваивание с побитным OR.
18
самый низкий
Слева - направо
34.
Что есть в Си?35.
Что есть в Си? (1)http://givi.olnd.ru/kr2/ - Б. Керниган, Д. Ритчи. Язык
программирования Си
https://codernet.ru/books/c_plus/programmirovanie_na_s_dlya_nachinay
ushhix_3-e_izd/ - Программирование на С для начинающих. 3-е изд.
Грег Перри, Дин Миллер
https://dfe.petrsu.ru/koi/posob/c/ - Курсков С. Ю. Введение в язык Си
http://cppstudio.com/ - Основы программирования на языках Си и
C++ для начинающих
https://learnc.info/c/ - Курс Лекций по Языку Си
https://prog-cpp.ru/c/ - Язык Си
36.
Что есть в Си? (2)Константы
Неименованные константы
целые (100), вещественные (12.25), символьные ('A')
десятичные (123), восьмеричные (0234), шестнадцатиричные (0xFF)
Именованные константы (#define NUM 5)
Переменные
Имена переменных (идентификаторы) (int val;)
Определение переменных (int val;)
Инициализация (int val = 10;)
Декларации (объявления) переменных (extern) (extern int val;)
Область действия переменных ({ int a=1; {int b = 2;} a=b;/*ОШИБКА*/} )
Внешние (глобальные) переменные (int a=5; void f() {})
Локальные переменные (int a=5; void f() {int b = a;})
Статические (глобальные и локальные) переменные (static int a= 10; void f() {static int b = 20;})
Регистровые переменные (void f() {register int a = 20;})
37.
Что есть в Си? (3)Операторы
Арифметические операторы (d = b*b-4*a*c; p = 2*(a+b); sr = sum/n; dig = val%2; )
Операторы отношения и логические операторы ( if (x>=left && x<=right && y>=top && y <=
bottom) {/* мы внутри прямоугольника!*/})
Инкрементные и декрементные операторы
Побитовые операторы
Выражения
Арифметические выражения(d = b*b-4*a*c; p = 2*(a+b); sr = sum/n; dig = val%2; )
Операторы присваивания и выражения (d = b*b-4*a*c; p = 2*(a+b); sr = sum/n; dig = val%2; )
Условные выражения (тернарная операция a ? b : c )
Приоритет и порядок вычислений
Инструкции
Цикл for (for(i=0;i<n;i++) printf(“%d ”, a[i]);)
Цикл while (while (!empty()) {printf(“%d”, pop());})
Цикл do-while (do {scanf(“%d”, &val); f(val);} while(val!=0);)
if-else (if (t>35) printf(“очень жарко”); else if (t >25) printf(“жарко”); else printf(“норм”);)
Переключатель switch
Инструкция break
Инструкция continue
Инструкция goto и метки
Составной оператор { }
38.
Что есть в Си? (4)Типы и размеры данных
Целые типы
short, long
signed, unsigned
Вещественные типы
Символьный тип
Проверки класса символа: <ctype.h>
Массивы
Одномерные массивы
Одномерные массивы символов
Функции, оперирующие строками <string.h>
Многомерные массивы
Структуры
Массивы структур
Указатели на структуры
Структуры с указателями на себя
Объединения
Поля битов
Перечисления (enum)
39.
Что есть в Си? (4)Указатели и адресная арифметика
Указатели и адреса
Указатели и массивы
Адресная арифметика
Массивы указателей, указатели на указатели
Указатели на void
Указатели на функции
Преобразования типов
40.
Что есть в Си? (5)Функции
Функция main
Аргументы
Вызов функций и передача аргументов
Возвращение значения из функции (return)
Рекурсия
Списки аргументов переменной длины
Си-препроцессор
#include
#define
#pragma
Ввод-вывод
Стандартный ввод–вывод
Форматный вывод (printf)
Форматный ввод (scanf)
Доступ к файлам
FILE
Открытие/закрытие файла (fopen/fclose)
Форматный файловый ввод/вывод (fscanf/fprintf)
Ввод–вывод символов и строк (getс, fgets)
41.
Что есть в Си? (6)Динамическая память
malloc, free
Заголовочные файлы
Аргументы в командной строке
Средство typedef
Стандартные функции
Случайные числа
rand(), srand()
Математические функции
sin(), cos() и др.
Стандарты языка Си: С99, C11
42.
43.
Что можно прочитать про Сиhttp://givi.olnd.ru/kr2/ - Б. Керниган, Д. Ритчи. Язык
программирования Си - УЖЕ МОЖНО НАЧИНАТЬ ЧИТАТЬ ЭТУ
КНИГУ!
https://codernet.ru/books/c_plus/programmirovanie_na_s_dlya_nachinay
ushhix_3-e_izd/ - Программирование на С для начинающих. 3-е изд.
Грег Перри, Дин Миллер
https://dfe.petrsu.ru/koi/posob/c/ - Курсков С. Ю. Введение в язык Си
http://cppstudio.com/ - Основы программирования на языках Си и
C++ для начинающих
https://learnc.info/c/ - Курс Лекций по Языку Си
https://prog-cpp.ru/c/ - Язык Си
44.
ИТОГО – что изучили!Познакомились с языком программирования Си
Можете использовать Си, можете изучать Си подобные языки (C++, Java, C# и много других)
Повторили и углубили основы программирования:
- Управление - линейный код, развилки, циклы, break, continue, goto (как на Си, так и на блок-схемах)
- Организация и вызов подпрограмм (в том числе рекурсия)
- Организация и использование данных – простые переменные, массивы, структуры, динамические
структуры
- Память – Работа с файлами, Динамическая память, Статическая память, Стек (вызовов)
- Трассировка кода программы – включая трассировку рекурсивных вызовов – как на бумаге/«в
голове», так и в MS VS.
Алгоритмизация:
- Стандартные алгоритмы обработки массивов, строк, файлов
- Сортировки массивов
- АТД: Стек, Очередь, Словарь
- Реализация Словаря на массиве, списке, дереве, хэше
Программирование на ОС Windows:
- Создание Windows приложения
- Создание графики из линий, примитивных фигур, используя перья и кисти.
- Управление программой при помощи клавиатуры и мыши
45.
Что еще осталось в рамках курса?Доделать все лаб работы
Повторить всю теорию по курсу – подготовиться к теоретической
части экзамена
Потренироваться в выполнении задач, похожих на экзаменационные
– подготовиться к практической части экзамена
Сдать экзамен!
46.
ВСЁ!47.
48.
А что дальше?49.
А что будет после ОА и П?***Какие темы нужно изучить?
Какие предметы предстоит изучить?
Что нужно знать для того, чтобы
получить «работу мечты»?
50.
Что нужно знать для того, чтобы получить «работу мечты»?Как освоить бэкенд-разработку в 2022 году: дорожная карта https://tproger.ru/articles/backend-roadmap-2021/
51.
Что нужно знать для того, чтобы получить «работу мечты»?Как освоить фронтенд-разработку в 2022 году: дорожная карта https://tproger.ru/articles/frontend-roadmap-2021/
52.
Какие темы нужно изучить чтобы стать «ИТишником»?База для базы:
- Базовая (школьная) математика
- Дискретная математика (множества, графы, мат логика и т.п.)
- Английский язык (хотя бы до уровня – читаю и понимаю текст HELP/документации без словаря
и без переводчика)
- Основы программирования (переменные/массивы/структуры, развилки/циклы/вложенные
конструкции, вызовы подпрограмм, работа с консолью/файлами, 2000+ строк кода, и др)
Общая база для любой специализации в ИТ:
- Основы цифровых устройств
- Машинно-ориентированное программирование (assembler)
- Операционные системы (ОС)
- Алгоритмы и структуры данных
- ООП (объектно-ориентированное программирование/проектирование/парадигма)
- Базы данных (СУБД, SQL)
- Основы интернета (HTTP, HTML и многое другое)
- 3-5+ языков программирования (на уровне «знаком и написал 2000+ строк на каждом») –
скорее всего что-то из следующих: C, C++, C#, Java, JavaScript, PHP, Python, Visual Basic, Swift, Go,
Fortran, Kotlin
Специализация:
- см. предыдущие слайды и 100500+ других RoadMap «Как стать XXX-программистом»
53.
Какие предметы предстоит изучить? ***Скорее всего – ваш список предметов будет отличаться!
Высшая математика
Теория вероятностей и математическая
статистика
Дискретная математика
Математическая логика и теория
алгоритмов
Теоретические основы информатики
Технологии программирования
Организация ЭВМ и системы
Базы данных
Проектирование и архитектура
программных систем
Конструирование программного
обеспечения
Тестирование программного обеспечения
Проектный практикум
Экономика и управление проектом
Иностранный язык
Теория автоматов и формальных языков
Основы теории систем
Аналитическая геометрия
Численные методы
Информационные системы и технологии
Компьютерная графика
Интернет-программирование
Компонентно-ориентированное
программирование
Распределенные вычисления и
приложения
Системное программное обеспечение
Информационная безопасность
Введение в системный анализ
Проектирование человеко-машинного
интерфейса
Алгоритмы и структуры данных
Сети и телекоммуникации
Теоретические основы управления
знаниями
Исследование операций
Системы управления базами данных
Методы искусственного интеллекта
Операционные системы
54.
Когда и как надо начинать работать(по специальности)? (IMHO)
54
55.
56.
ИТОГО по лекции 161. Разобрались с операциями – инкремент/декремент,
побитовыми, тернарной. Узнали про LVALUE и RVALUE.
2. Вспомнили всё, что изучили про Си.
3. Подвели итоги.
4. Заглянули в будущее!
57.
Желаю всем найти себя в профессиональном плане!Желаю всем реализовать свой потенциал!
57