
- •История развития эвм.
- •Характеристика современных языков программирования
- •Понятие алгоритма.
- •Блок-схема алгоритма.
- •Использование псевдокодов для разработки программы.
- •Планирование процесса решения задачи.
- •Основные этапы разработки программы
- •12. Структура и элементы программы.
- •13. Определение оператора. Роль свободного пространства в операторах.
- •14. Пустой и составной операторы.
- •15. Определение выражения. Простые и сложные выражения.
- •16. Операции. Категории операций.
- •17. Хранение данных в переменных и константах
- •18. Определение переменной. Требования к именам переменных.
- •19. Типы числовых переменных.
- •20. Операции отношения, их приоритет.
- •21. Булевы (логические) операторы. Приоритет логических операций.
- •22. Понятие символа и строки. Используемые типы данных.
- •23. Массивы символов. Инициализация символьных массивов.
- •24. Работа со строками без использования массивов. Функция malloc().
- •25. Ввод строк с клавиатуры. Функции gets() и scanf().
- •26. Вывод строк и символов. Функции puts() и printf().
- •27. Понятие массива. Индекс и элемент массива.
- •28. Одномерные массивы.
- •29. Многомерные массивы.
- •30. Имена и объявления массивов.
- •32. Циклические структуры.
- •33. Оператор for. Алгоритм работы цикла for
- •33. Оператор while. Алгоритм работы цикла while.
- •35. Оператор do … while. Алгоритм работы цикла.
- •36. Вложенные циклы.
- •37. Управление циклами. Операторы break и continue.
- •38. Оператор goto
- •39. Бесконечные циклы и их организация
12. Структура и элементы программы.
Любая достаточно большая программа на Си состоит из файлов. Файлы транслируются Си-компилятором независимо друг от друга и затем объединяются программой-построителем задач, в результате чего создается файл с программой, готовой к выполнению. Файлы, содержащие тексты Си-программы, называются исходными.
В языке Си исходные файлы бывают двух типов:
заголовочные, или h-файлы
файлы реализации, или Cи-файлы
Имена заголовочных файлов имеют расширение ".h". Имена файлов реализации имеют расширения ".c". Заголовочные файлы содержат только описания. Прежде всего, это прототипы функций. Также в h-файлах описываются имена и типы внешних переменных, константы, новые типы, структуры и т.п. При трансляции заголовочных файлов, как правило, никакие объекты не создаются.
Файлы реализации содержат тексты функций и определения глобальных переменных.
Представление исходных текстов в виде заголовочных файлов и файлов реализации необходимо для создания больших проектов, имеющих модульную структуру. Заголовочные файлы служат для передачи информации между модулями. Файлы реализации - это отдельные модули, которые разрабатываются и транслируются независимо друг от друга и объединяются при создании выполняемой программы.
Файлы реализации могут подключать описания, содержащиеся в заголовочных файлах. Сами заголовочные файлы также могут использовать другие заголовочные файлы. Заголовочный файл подключается с помощью директивы препроцессора #include. Например, описания стандартных функций ввода-вывода включаются с помощью строки:
#include <stdio.h>
Имя h-файла записывается в угловых скобках, если этот h-файл является частью стандартной Си-библиотеки и расположен в одном из системных каталогов. Имена h-файлов, созданных самим программистом в рамках разрабатываемого проекта и расположенных в текущем каталоге, указываются в двойных кавычках, например:
#include "mylib.h"
Препроцессор - это программа предварительной обработки текста непосредственно перед трансляцией. Команды препроцессора называются директивами. Директивы препроцессора содержат символ # в начале строки. Препроцессор используется в основном для подключения h-файлов. В Си также очень часто используется директива #define для задания символических имен констант. Пример:
#define PI 3.14159265
Функции. Функция является основной структурной единицей языка Си. Функция - это фрагмент программы, который может вызываться из других программ. Функция обычно выполняет алгоритм, который описывается и реализуется отдельно от других алгоритмов. При вызове функции передаются аргументы, которые могут быть использованы в теле функции.
Вызов функции происходит в результате использования ее имени в выражении. За именем функции следуют круглые скобки, внутри которых перечисляются фактические значения ее аргументов. Даже если аргументов нет, круглые скобки с пустым списком аргументов обязательно должны присутствовать!
После вызова функции значение, возвращенное в результате ее выполнения, используется в выражении (имя функции как бы заменяется возвращенным значением). Примеры:
x = sin(1.0);
f();