
- •Т.В. Панова основы информатики и программирования на языке высокого уровня си Лабораторный практикум
- •Лабораторная работа №1. Организация компьютерной системы. Операционная система. Оболочка операционной системы………………………………………..…………5
- •Лабораторная работа №1
- •Организация компьютерной системы. Операционная система. Оболочка операционной системы
- •I. Теоретические сведения.
- •1. Основные блоки фон-неймановской кс
- •Общая функциональная схему кс
- •Цп управ.
- •2. Программное обеспечение
- •2.1. Системное по.
- •Функциональные уровни в составе спо
- •2.2. Прикладное по.
- •2.3. Инструментальное по.
- •3. Операционная система
- •3.2. Файл – объект файловой системы.
- •3.3. Логический диск и каталоги.
- •3.4. Организация файловой структуры ос и доступ к файлу.
- •3.5. Дерево каталогов.
- •3.6. Группы файлов.
- •4. Оболочка операционной системы
- •4.1. Функциональные клавиши оболочки ос.
- •III. Практическая часть.
- •1.2. Операционная среда.
- •2. Состав Windows
- •3. Файловые системы Windows
- •3.1. Файловая система fat (File Allocation Table).
- •3.2. Файловая система ntfs (New Technology File System).
- •4. Объекты Windows
- •4.1. Логические объекты Windows.
- •4.2. Физические объекты Windows.
- •II. Контрольные вопросы.
- •III. Практическая часть.
- •2.2. Перемещение файла.
- •IV. Требования к защите
- •2. Текстовый процессор Microsoft Word
- •2.1. Элементы окна Word.
- •II. Контрольные вопросы.
- •III. Практическая часть.
- •IV. Требования к защите
- •1.2. Описание алгоритмов с помощью блок-схем.
- •Основные символы блок-схем алгоритмов
- •1 (Да)0 (нет)
- •II. Контрольные вопросы.
- •3. Блок-схема алгоритма задачи:
- •2. Выполнение индивидуального задания.
- •IV. Требования к защите индивидуальных заданий.
- •V. Варианты индивидуальных заданий.
- •Лабораторная работа №5
- •3.Тип данных
- •4. Базовые типы данных языка Си
- •6. Операции и выражения
- •6.1. Знаки операций.
- •6.2. Операции присваивания.
- •6.3. Арифметические операции.
- •6.4. Операции сравнения и логические операции.
- •6.5. Условная операция.
- •6.6. Операция явного преобразования типа.
- •7. Логика алгоритма и операторы
- •8. Операторы простой последовательности действий
- •8.1. Функции форматного ввода/вывода данных.
- •Функция форматного ввода данных
- •Функция форматного вывода данных
- •Пример организации форматного ввода/вывода данных
- •8.2. Основные стандартные функции. Стандартные функции консольного ввода/вывода
- •Стандартные математические функции
- •II. Контрольные вопросы.
- •III. Практическая часть.
- •2. Математическая модель и описательный алгоритм задачи:
- •Лабораторная работа №6
- •Условные конструкции: операторы ветвления
- •I. Теоретические сведения.
- •1. Условный оператор
- •2. Оператор множественного выбора (переключатель)
- •II. Контрольные вопросы.
- •2. Математическая модель и описательный алгоритм задачи:
- •Лабораторная работа №7
- •Циклические конструкции: операторы цикла
- •I. Теоретические сведения.
- •1. Оператор цикла с параметром (счетчиком)
- •2. Итерационные циклы
- •2.1. Оператор цикла с предусловием.
- •2.2. Оператор цикла с постусловием.
- •II. Контрольные вопросы.
- •III. Практическая часть.
- •1. Выполнение общего задания.
- •2. Математическая модель и описательный алгоритм задачи:
- •3. Блок-схема алгоритма задачи:
- •4. Текст программы:
- •5. Тестирование:
- •2. Математическая модель и описательный алгоритм задачи:
- •3. Блок-схема алгоритма задачи:
- •4. Текст программы:
- •5. Тестирование:
- •2. Математическая модель и описательный алгоритм задачи:
- •3. Блок-схема алгоритма задачи:
- •4. Текст программы:
- •5. Тестирование:
- •2. Математическая модель и описательный алгоритм задачи:
- •Лабораторная работа №8
- •Указатели и одномерные массивы данных
- •I. Теоретические сведения.
- •1. Указатели
- •1. Объявление переменных:
- •2. Операции присваивания объявленным переменным:
- •3. Использование косвенного обращения:
- •2. Массив как статическая структура данных
- •Одномерный массив данных
- •3. Адресная арифметика
- •4. Линейный поиск и сортировка в массивах данных
- •4.1. Признаки порядка.
- •4.2. Способы сортировки в массивах данных.
- •II. Контрольные вопросы.
- •III. Практическая часть.
- •1. Выполнение общего задания.
- •3. Блок-схема алгоритма программы:
- •4. Текст программы:
- •3. Блок-схема алгоритма программы:
- •4. Текст программы:
- •5. Тестирование:
- •3. Блок-схема алгоритма программы:
- •4. Текст программы:
- •5. Тестирование:
- •3. Блок-схема алгоритма программы:
- •4. Текст программы:
- •5. Тестирование:
6.1. Знаки операций.
Операции |
Назначение операций |
( ) [ ] -> . |
операции наивысшего приоритета, которые используются при вызове функций, индексировании элементов массива, операции выбора компонентов структурированного объекта (прямой и косвенный) |
! + - ++ -- & * |
унарные операции: логическое отрицание, положительное значение, изменение знака, увеличение на единицу, уменьшение на единицу, получение адреса, обращение по адресу |
* / % |
мультипликативные бинарные операции: умножение, деление, получение остатка от деления целочисленных операндов |
+ - |
аддитивные бинарные операции: сложение, вычитание |
<< >> |
операции поразрядного сдвига: влево, вправо |
< <= >= > == != |
операции отношения: меньше, меньше или равно, больше или равно, больше, равно, не равно |
& ^ | |
логические бинарные операции: поразрядные конъюнкция, исключающее ИЛИ, дизъюнкция |
&& || |
логические бинарные операции: конъюнкция, дизъюнкция |
?: |
условная тернарная операция (три операнда) |
= *= /= %= += -= &= ^= |= <<= >>= |
операции присваивания: простое, после соответствующей операции |
, |
операция группирует вычисления слева направо |
6.2. Операции присваивания.
К операциям присваивания относятся все операции, которые меняют значение одного из операндов.
Группы операций присваивания:
обычное присваивание (=);
присваивание, соединенное с одной из бинарных операций (+=, -=, *=, /=, %=, <<=, >>=, &=, |=, ^=);
операции инкремента (++) и декремента (--) – увеличение и уменьшение на единицу.
Например, если объявить переменные:
int a,b,c;
тогда можно использовать такие операторы присваивания:
a=b=c; // эквивалентно: b=c; a=b;
a +=c; // эквивалентно: a=a+c;
b++; // получить с и увеличить на 1 после использования: b=b+1
++с; // увеличить с на 1 до использования: с=с+1
b--; // получить с и уменьшить на 1 после использования: b=b-1
--a; // уменьшить c на 1 до использования: a=a-1
6.3. Арифметические операции.
Арифметические операции: *, /, % (остаток от деления), +, -
Например,
a=(a+5)%3; // a присвоить остаток от деления a+5 на 3
b=a--;
d=b/а;
6.4. Операции сравнения и логические операции.
В языке Си отсутствует базовый тип данных для представления логических значений (false, true), поэтому используются целочисленные значения: 0 всегда является ложью, 1 – истиной. Такие значения дают операции отношения и логические операции.
Операции сравнения: <, <=, >, >=
Логические операции: ==, !=, &&, ||
Все операции сравнения дают в качестве результата значения 1 или 0, поэтому их можно использовать совместно с арифметическими и другими операциями:
a=b<c; // запомнить результат сравнения
a=(b<c)*3 // принимает значения 0 или 3
6.5. Условная операция.
Условная операция позволяет встроить в любое выражение некоторое подобие условного оператора, обозначается как ? : и означает:
<условие> ? <выражение_для_истины> : <выражение_для_лжи>
Если объявить
int a,b,c,d;
тогда
c=d-a>b?a:b; // с=а, если d-а>b, иначе, с=b