Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
questions_inf_progr_2011_Avtosokhranennyy.docx
Скачиваний:
3
Добавлен:
23.09.2019
Размер:
142.27 Кб
Скачать
  1. Алгоритм. Понятие алгоритма. Типы алгоритмов. Формы представления. Основные блоки.

  • Понятие алгоритма: Алгоритмом называется точное и понятное предписаниe исполнителю совершить последовательность действий, направленных на решение поставленной задачи.

Свойства алгоритма.

- Дискретность.

- Понятность

- Детерминированность

- Массовость

- Результативность

  • Типы алгоритмов: Все имеющиеся алгоритмы можно разделить на три вида:

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

- алгоритмы ветвления;

- циклические алгоритмы.

  • Формы представления:

- словесная (записи на естественном языке);

- графическая (изображения из графических символов);

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

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

  • Основные блоки:

  1. Программирование на языке с.Основные понятия языка (алфавит, идентификаторы, ключевые слова, препроцессор, объектный код)

  • Программирование на языке С: http://comp-science.narod.ru/Progr_new/release_01/cpp2.html

  • Основные понятия языка:

Алфавит – фиксированный для данного языка набор символов (букв, цифр, специальных знаков и т.д.), которые могут быть использованы при написании программы.

Имена (идентификаторы) - последовательность символов для обозначения объектов программы (переменных, массивов, функций и дp.).

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

Препроцессор С/С++ — программный инструмент, изменяющий код программы для последующей компиляции и сборки, используемый в языках программирования Си и его потомка - C++. Этот препроцессор обеспечивает использование стандартного набора возможностей:

- Замена триграфов и других символами #[]

- Замена комментариев пустыми строками

- Включение файла — #include

- Макроподстановки — #define

- Условная компиляция — #if, #ifdef, #elif, #else, #endif

Объектный код - подлежащая исполнению форма подходящего представлении одного или более процессов (текст программы или язык программы), которая компилируется программирующей системой

  1. Структура программы на языке с.

Текст программы имеет определенную структуру:

1. заголовок

2. включение необходимых внешних файлов

3. ваши определения для удобства работы

4. объявление глобальных переменных

Перед использованием переменной в Си её необходимо объявить! Т.е. указать компилятору какой тип данных она может хранить и как она называется.

Глобальные переменные объявляются, вне какой либо функции. Т.е. не после фигурной скобки {. Они доступны в любом месте программы, значит можно читать их значения и присваивать им значения там, где требуется.

5. описание функций - обработчиков прерываний

6. описание других функций используемых в программе

7. функция main - это единственный обязательный пункт !

  1. Типы данных языка с.

Как константы, так и переменные могут быть различных типов, которые определяют их структуру, набор допустимых значений, правила использования и способ представления в ЭВМ. Иерархию типов данных можно представить следующей схемой.

Простые (скалярные) типы:

- целые,

- вещественные,

- символьные,

- указатели,

- перечислимый тип.

Составные (структурированные) типы:

- массив,

- структура,

- объединение.

Переменная простого (скалярного) типа в любой момент времени хранит только одно значение. В отличие от простых переменных, переменные составного (структурированного) типа одновременно хранят несколько значений.

Целые и вещественные переменные предназначены для хранения чисел, символьные переменные – это также числовые переменные, они хранят ASCII коды символов.

Указатель – это переменная, значением которой является адрес объекта (обычно другой переменной) в памяти компьютера. Таким образом, если одна переменная содержит адрес другой переменной, то говорят, что первая переменная указывает (ссылается) на вторую.

Массив – это группа элементов одинакового типа (double, float, int и т. п.). Из объявления массива компилятор должен получить информацию о типе элементов массива и их количестве.

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

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

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