Основные понятия языков программирования
30 Questions
0 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

Что такое алфавит языка программирования?

Набор символов, используемых для написания программы. Это могут быть буквы, цифры, знаки пунктуации и другие символы.

Объясните, что такое синтаксис языка программирования.

Правила, определяющие правильную структуру программы. Они описывают, как должны быть составлены выражения, операторы и другие элементы кода.

Что такое семантика языка программирования?

Значение, придаваемое конструкциям языка программирования. Семантика определяет, как программа взаимодействует с данными и какие операции выполняются.

Что такое лексема в языке программирования?

<p>Единица языка программирования, представляющая собой минимальный смысловой элемент. Например, ключевые слова, операторы, идентификаторы.</p> Signup and view all the answers

Что такое идентификатор в языке программирования?

<p>Имя, присваиваемое переменным, функциям, классам и другим программным объектам. Идентификаторы должны следовать определенным правилам именования.</p> Signup and view all the answers

Что такое ключевые слова в языке программирования?

<p>Слова, имеющие специальное значение в языке программирования. Они часто используются для обозначения базовых конструкций, их нельзя использовать в качестве идентификаторов.</p> Signup and view all the answers

Что такое комментарии в языке программирования?

<p>Фрагменты кода, не влияющие на выполнение программы, предназначенные для пояснений и описания. Они играют важную роль в документации кода.</p> Signup and view all the answers

Какие типы комментариев используются в языке Си?

<p>Все перечисленные (D)</p> Signup and view all the answers

Каковы основные принципы назначения идентификаторов в языке программирования?

<p>Идентификаторы должны быть информативными и отражать смысл переменной или функции. Избегайте использования названий, которые могут быть конфузными или труднопонимаемыми. Соблюдайте стандарты именования, принятые в языке программирования.</p> Signup and view all the answers

Что такое переменная в языке программирования?

<p>Именованная ячейка в памяти, предназначенная для хранения данных. Значение переменной может изменяться в процессе выполнения программы.</p> Signup and view all the answers

Что такое константа в языке программирования?

<p>Значение, которое не может быть изменено в процессе выполнения программы. Константы могут быть литералами (явными значениями) или определенными именованными значениями.</p> Signup and view all the answers

Что такое неявное преобразование типов?

<p>Происходит автоматически при выполнении операций, если типы данных не совпадают, но существует правило преобразования.</p> Signup and view all the answers

Приведите пример арифметического выражения с явным преобразованием типов.

<p>int a = 5; float b = 2.5; int c = a + (int)b;</p> Signup and view all the answers

Какие виды констант используются в языке C?

<p>Все перечисленные (A)</p> Signup and view all the answers

Что такое тип данных в языке программирования?

<p>Характеристика, определяющая, какие значения могут быть присвоены переменной, а также какие операции могут быть выполнены над этими значениями.</p> Signup and view all the answers

Что такое операция в языке программирования?

<p>Действие, которое выполняется над данными, такие как присвоение, +, -, *, /.</p> Signup and view all the answers

Что такое разделитель в языке программирования?

<p>Символ, разделяющий элементы программы.</p> Signup and view all the answers

Какие операции относятся к арифметическим операциям?

<p>Примерами арифметических операций являются: + (сложение), - (вычитание), * (умножение), / (деление).</p> Signup and view all the answers

Какие операции относятся к логическим операциям?

<p>Примеры логических операций: &amp;&amp; (логическое И), || (логическое ИЛИ), ! (логическое НЕТ).</p> Signup and view all the answers

Что такое оператор присваивания и для чего он используется?

<p>Оператор присваивания в программировании используется, когда необходимо присвоить определённое значение переменной. То есть показать программе, что в ячейке памяти, обозначенной именем, лежат конкретные данные, которые нужно будет использовать в процессе исполнения кода.</p> Signup and view all the answers

Что является правильным порядком приоритета для арифметических операторов?

<p>Унарный минус (-), инкремент (++) и декремент (--), умножение (*), деление (/), остаток от деления (%), сложение (+), вычитание (-) (A)</p> Signup and view all the answers

Приведите пример объявления переменной в языке Си.

<p>int x; // объявление переменной х типа int</p> Signup and view all the answers

Приведите пример инициализации переменной в языке Си.

<p>х = 5; // инициализация переменной х значением 5</p> Signup and view all the answers

Приведите пример использования переменной в выражении в языке Си.

<p>int y = x + 3; // использование переменной х в выражении</p> Signup and view all the answers

Что такое линейный алгоритм?

<p>Все действия выполняются последовательно друг за другом.</p> Signup and view all the answers

Что такое алгоритм ветвления?

<p>Представляет собой способ организации выполнения программы с учетом условий. Это позволяет программе принимать решения и выполнять различные действия в зависимости от текущих условий выполнения.</p> Signup and view all the answers

Что такое управляющая структура в языке программирования?

<p>Это элемент программы, который определяет порядок выполнения инструкций.</p> Signup and view all the answers

Что такое условный оператор?

<p>Условный оператор (обычно if-else) выполняет определенные действия в зависимости от истинности условия.</p> Signup and view all the answers

Что такое условная операция?

<p>Это альтернативный способ записи условного оператора.</p> Signup and view all the answers

Какие логические операции используются в языках программирования?

<p>Все перечисленные (A)</p> Signup and view all the answers

Flashcards

Алфавит языка программирования

Алфавит языка программирования - это набор символов, которые могут быть использованы в программе. Например, латинский алфавит, цифры, знаки препинания.

Синтаксис языка программирования

Синтаксис языка программирования - это правила, определяющие, как правильно строить программы на этом языке. Например, операторы, ключевые слова, синтаксис циклов и условных операторов.

Семантика языка программирования

Семантика языка программирования - это смысл, который придается конструкциям программы. Например, +, -, *, / в математическом выражении, а присваивание значения переменной.

Лексема

Лексема - это минимальная единица языка программирования, которую лексический анализатор распознает как единое целое. Например, переменная, ключевое слово, оператор, число, символ.

Signup and view all the flashcards

Идентификатор

Идентификатор - это имя, которое дается программным объектам, например переменным, функциям, классам. Идентификатор должен начинаться с буквы или подчеркивания, и может содержать только буквы, цифры или подчеркивания.

Signup and view all the flashcards

Ключевые слова

Ключевые слова - это зарезервированные слова в языке программирования, которые имеют особый смысл.

Signup and view all the flashcards

Комментарий

Комментарий - это текст, который игнорируется компилятором. Комментарии используются, чтобы добавить пояснения в код.

Signup and view all the flashcards

Принципы назначения идентификаторов программных объектов

Идентификатор должен быть описательным и отражать назначение объекта. Например, count для счетчика, name для имени и т.д..

Signup and view all the flashcards

Примеры написания комментариев в языке C

Язык программирования Си позволяет использовать два типа комментариев: однострочные и многострочные. Однострочные комментарии начинаются с символов ' // ' и оканчиваются на конце строки. Многострочные комментарии начинаются с символов ' /* ' и оканчиваются символами ' * / '.

Signup and view all the flashcards

Переменная

Переменная - это величина, значение которой может изменяться во время выполнения программы.

Signup and view all the flashcards

Константа

Константа - это величина, значение которой не может изменяться во время выполнения программы.

Signup and view all the flashcards

Преобразование типов

Преобразование типов - это процесс преобразования значения одного типа в другой.

Signup and view all the flashcards

Явное преобразование типов

Явное преобразование - это преобразование типа, которое выполняемое программистом.

Signup and view all the flashcards

Неявное преобразование типов

Неявное преобразование - это преобразование типа, которое выполняется компи-лятором автоматически.

Signup and view all the flashcards

Тип данных

Тип данных определяет возможные значения, которые может принимать переменная, а также операции, которые можно с этими данными выполнять

Signup and view all the flashcards

Операция

Операция - это действие, которое выполняется над данными. Например, сложение, вычитание, умножение, деление.

Signup and view all the flashcards

Оператор

Оператор - это символ или последовательность символов, которая обозначает операцию.

Signup and view all the flashcards

Разделитель

Разделитель - это символ, который отделяет элементы программы. Например, пробел, табуляция, точка с запятой.

Signup and view all the flashcards

Арифметические операции

Арифметические операции - это операции, которые выполняются над числами. Например, сложение, вычитание, умножение, деление.

Signup and view all the flashcards

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

Логические операции - это операции, которые выполняются над логическими значениями. Например, && (и), || (или), ! (не).

Signup and view all the flashcards

Оператор присваивания

Оператор присваивания используется для присваивания значения переменной. Обычно он обозначается знаком ' = '.

Signup and view all the flashcards

Приоритет операций

Приоритет операций определяет порядок, в котором выполняются операции в выражении.

Signup and view all the flashcards

Объявление переменной

Объявление переменной - это процесс создания переменной и указания ее типа данных. Например, int age;.

Signup and view all the flashcards

Инициализация переменной

Инициализация переменной - это процесс присваивания переменной начального значения. Например, int age = 25 ;.

Signup and view all the flashcards

Линейный алгоритм

Линейный алгоритм - это алгоритм, который выполняется последовательно, шаг за шагом. Например, увеличение счетчика на единицу.

Signup and view all the flashcards

Управляющая структура

Управляющая структура - это языковая конструкция, которая позволяет изменять порядок выполнения программы. Например, if, else, for, while.

Signup and view all the flashcards

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

Условный оператор - это оператор, который выполняет определенное действие в зависимости от условия. Например, if.

Signup and view all the flashcards

Циклический алгоритм

Циклический алгоритм - это алгоритм, который повторяет определенный блок инструкций несколько раз. Например, цикл while.

Signup and view all the flashcards

Функция

Функция - это блок кода, который выполняет определенное действие. Например, функция sqrt вычисляет корень квадратный.

Signup and view all the flashcards

Объявление функции

Объявление функции - это процесс создания функции. Например, int calculateArea(int, int);.

Signup and view all the flashcards

Определение функции

Определение функции - это процесс реализации тела функции. Например, int calculateArea(int width, int height) { return width * height; }.

Signup and view all the flashcards

Вызов функции

Вызов функции - это процесс использования функции. Например, int area = calculateArea(5, 10);.

Signup and view all the flashcards

Формальный параметр

Формальный параметр - это переменная, используемая в определении функции.

Signup and view all the flashcards

Фактический параметр

Фактический параметр - это значение, передаваемое в функцию при ее вызове.

Signup and view all the flashcards

Передача параметров по значению

Передача параметров по значению - это способ передачи параметров в функцию, при котором в функцию передается копия значения. Изменения, внесенные в параметр в функции, не влияют на исходное значение.

Signup and view all the flashcards

Передача параметров по ссылке

Передача параметров по ссылке - это способ передачи параметров в функцию, при котором в функцию передается адрес значения. Изменения, внесенные в параметр в функции, влияют на исходное значение.

Signup and view all the flashcards

Локальная переменная

Локальная переменная - это переменная, которая доступна только внутри функции, в которой она объявляется.

Signup and view all the flashcards

Глобальная переменная

Глобальная переменная - это переменная, которая доступна из любой точки программы.

Signup and view all the flashcards

Указатель

Указатель - это переменная, которая хранит адрес другого значения. Указатель может быть использован для прямого доступа к значению, на которое он указывает.

Signup and view all the flashcards

Динамическая память

Динамическая память - это часть памяти, которая выделяется и освобождается по требованию программы. Динамическая память используется для создания структур данных переменной длины.

Signup and view all the flashcards

Поток

Поток - это последовательность данных, передаваемых из одного места в другое. Например, ввод с клавиатуры, вывод на экран, запись в файл, чтение из файла.

Signup and view all the flashcards

Файл

Файл - это название место на жестком диске, где хранятся данные.

Signup and view all the flashcards

Структура программы на языке Си

Структура программы на языке Си включает в себя главный файл (main.c), заголовочные файлы (например, stdio.h) и функцию main().

Signup and view all the flashcards

Директивы препроцессора

Директивы препроцессора - это специальные команды, которые выполняются до начала компиляции программы. Например, #include (включить заголовочный файл) или #define (определить константу).

Signup and view all the flashcards

Массив

Массив - это структура данных, которая хранит набор элементов одного типа. Например, int numbers[10]; .

Signup and view all the flashcards

Структура

Структура - это структура данных, которая состоит из нескольких полей разных типов. Например, struct student { string name; int age; };.

Signup and view all the flashcards

Связанный список

Связанный список - это структурированный список элементов, где каждый элемент содержит не только свои данные, но и ссылку на следующий элемент.

Signup and view all the flashcards

Очередь

Очередь - это структура данных, в которой элементы добавляются в конец и извлекаются из начала.

Signup and view all the flashcards

Стек

Стек - это структура данных, в которой элементы добавляются и извлекаются из вершины.

Signup and view all the flashcards

Рекурсия

Рекурсия - это техника, которая позволяет функции вызывать саму себя.

Signup and view all the flashcards

Линейный поиск

Линейный поиск - это метод поиска элемента в массиве путем последовательного просмотра всех его элементов.

Signup and view all the flashcards

Бинарный поиск

Бинарный поиск - это метод поиска элемента в отсортированном массиве путем деления массива пополам и сравнения искомого элемента с элементом, находящимся в середине.

Signup and view all the flashcards

Сортировка

Сортировка - это процесс упорядочивания элементов массива по возрастанию или убыванию.

Signup and view all the flashcards

Сортировка пузырьком

Сортировка пузырьком - это метод сортировки, который последовательно сравнивает соседние элементы массива и меняет их местами, если они находятся в неправильном порядке.

Signup and view all the flashcards

Сортировка вставками

Сортировка вставками - это метод сортировки, который последовательно вставляет элементы массива в соответствующую позицию в отсортированном подмассиве.

Signup and view all the flashcards

Сортировка слиянием

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

Signup and view all the flashcards

Study Notes

Языки программирования (основные понятия)

  • Алфавит: Набор символов, используемых для написания программы (буквы, цифры, знаки препинания).
  • Синтаксис: Правила, определяющие структуру программы (как должны быть составлены выражения, операторы).
  • Семантика: Значение, придаваемое конструкциям языка (как программа взаимодействует с данными).
  • Лексема: Минимальный смысловой элемент языка (ключевые слова, операторы, идентификаторы).
  • Идентификатор: Имя, присваиваемое переменным, функциям и другим программным объектам (должны соответствовать правилам именования).
  • Ключевые слова: Слова со специальным значением в языке (используются для обозначения базовых конструкций).
  • Комментарии: Фрагменты кода, не влияющие на выполнение программы, предназначенные для пояснений (важны для документации кода).

Переменные и константы

  • Переменная: Именованная ячейка памяти для хранения данных, значение может меняться.
  • Константа: Значение, которое не меняется во время выполнения программы (литералы или именованные значения).
  • Преобразование типов: Изменение типа данных переменной (явное - вручную, неявное - автоматически).
  • Примеры констант: Целочисленные, с плавающей точкой, символьные, строковые, перечисления (enum).

Типы данных

  • Тип данных: Характеристика переменной, определяющая допустимые значения и операции.
  • Правила преобразования типов: Как компилятор преобразует один тип в другой (в выражениях, при присваивании).
  • Примеры типов: Целочисленные (int, short, long, char), вещественные (float, double), символьные, указатели.

Операции

  • Операция: Действие, выполняемое над данными.
  • Операторы: Символы или ключевые слова, обозначающие операции (+, -, *, /, &&, ||, =).
  • Приоритет операций: Правила определения порядка выполнения операций (круглые скобки могут менять приоритет).

Линейный алгоритм

  • Линейный алгоритм: Последовательное выполнение действий, без ветвлений или циклов.
  • Примеры задач: Вычисление значения, основанного на прямых формулах.

Алгоритм ветвления

  • Алгоритм ветвления: Выполнение различных действий, в зависимости от условий (if-else).
  • Управляющие структуры: Элементы, которые определяют порядок выполнения действий (условные операторы, циклы).
  • Логические операции: Операции над логическими значениями (&& - И, || - ИЛИ, ! - НЕ).
  • Операции сравнения: Сравнивают значения и возвращают булевы результаты (==, !=, <, >, <=, >=).

Циклические алгоритмы

  • Циклический алгоритм: Повторение блока действий, пока выполняется условие (while, do-while, for).
  • Виды циклов: С предусловием (while), с постусловием (do-while), цикл с параметром (for).

Функции

  • Функция: Организованная последовательность инструкций, выполняющих определенную задачу (объявление, определение, вызов).
  • Математические функции: Встроенные функции для работы с числами (exp, log, pow, sqrt, sin, cos).

Передача параметров и возврат значений

  • Формальные параметры: Параметры, объявленные в определении функции.
  • Фактические параметры: Значения, переданные в функцию при ее вызове.
  • Передача по значению: Функция получает копию значения, изменение в функции не отражается вне ее.
  • Передача по ссылке: Функция получает адрес переменной, изменение в функции отражается вне ее.

Заголовочные файлы

  • Заголовочные файлы: Файлы ( *.h) содержащие объявления функций, структур данных и констант, используемые в программе.

Локальные/глобальные переменные

  • Локальные переменные: Переменные, объявленные внутри функции, доступны только в пределах этой функции.
  • Глобальные переменные: Переменные, объявленные вне функций, доступны в любом месте программы.

Динамическая память

  • Динамическое выделение памяти: Выделение памяти во время выполнения программы (malloc, calloc, realloc).
  • Освобождение памяти: Освобождение выделенной памяти (free).

Потоковый ввод-вывод

  • Потоковый ввод-вывод: Функции для ввода/вывода данных (printf, scanf, putchar, getchar).
  • Стандартные потоки: stdin (ввод), stdout (вывод), stderr (ошибки).

Файлы

  • Файлы: Набор данных, хранящихся на внешнем носителе.
  • Текстовые файлы: Содержат текстовые данные.
  • Бинарные файлы: Содержат данные в двоичном формате.

Структуры данных

  • Структура: Объединение данных разных типов под одним именем.
  • Массивы структур: Массив, содержащий несколько структур.
  • Связанные списки: Структура данных, в которой элементы связаны указателями.
  • Очереди: Структура данных, в которых элементы добавляются в конец и извлекаются из начала.
  • Стек: Структура данных, в которой элементы добавляются и извлекаются с одного конца.

Хеширование

  • Хеширование: Способ преобразования ключа в индекс массива (хеш-код).
  • Хеш-функция: Преобразует ключ в хеш-код.
  • Коллизии: Два разных ключа дают один и тот же хеш-код.

Алгоритмы

  • Алгоритм: Последовательность шагов для решения проблемы.
  • Свойства алгоритма: Определенность, входные данные, выходные данные, конечность, эффективность.
  • Способы представления алгоритма: Словесное описание, блок-схемы, алгоритмический язык.

Рекурсия

  • Рекурсия: Функция, которая вызывает саму себя.
  • Рекурсивные и итерационные алгоритмы: Разные подходы к решению задачи (рекурсия - вызов функции, итерация - цикл).

Поиск

  • Линейный поиск: Поиск элемента в массиве путем последовательного сравнения.
  • Бинарный поиск: Поиск элемента в отсортированном массиве путем деления массива пополам.
  • Интерполирующий поиск: Поиск элемента в отсортированном массиве, делая более информированные предположения о местоположении элемента.

Сортировка

  • Алгоритмы сортировки: Сортировка методом простого выбора, быстрая сортировка, сортировка пузырьком, сортировка Шелла, сортировка слиянием, сортировка расческой.

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Description

В этом квизе рассматриваются основные понятия языков программирования, включая алфавит, синтаксис, семантику и лексемы. Узнайте, как работают переменные, константы и ключевые слова, а также значение комментариев в коде.

More Like This

Use Quizgecko on...
Browser
Browser