- •«Омский государственный технический университет» программирование и основы алгоритмизации
- •Лабораторная работа 1
- •Алфавит языка, зарезервированые слова, операторы
- •Структура программы
- •Основные типы данных
- •Оператор присваивания, процедуры ввода-вывода
- •Printf(“строка форматов”, [список выводимых аргументов]
- •% [Флаг] [ширина] [.Точность]символ формата
- •Scanf(“%строка форматов”, &имя переменной);
- •Лабораторная работа 2 програмирование разветленых алгоритмов. Операторы передачи управления
- •Лабораторная работа 3 програмирование циклических алгоритмов с заданым числом повторений
- •Лабораторная работа 4 структурированные типы данных. Программирование алгоритмов обработки массивов
- •Лабораторная работа 5 обработка символьных и строковых данных
- •Лабораторная работа 6 указатели
- •Лабораторная работа 8 программирование с использованием функций
- •Лабораторная работа 9 структуры и объединения
- •Индивидуальные задания
Структура программы
Программа представляет собой совокупность логически самостоятельных этапов. Программа состоит из определенных разделов и в указанном порядке (табл. 1):
Таблица 1
|
Название раздела |
Ключевые слова, указывающие раздел в программе |
|
Библиотечные файлы |
# include <…> |
|
Директивы препроцессора |
#if, #elif, #else, #endif |
|
Макроопределения |
#define …. |
|
Пользовательские функции |
тип имя_функции (список параметров) |
|
Пользовательские типы данных |
struct .. |
|
Имя главной функции |
тип main (тип параметров) |
|
Переменные |
тип идентификатор = инициализирующее значение |
Операторные скобки { … } указывают начало и конец тела процедуры, функции или управляющего оператора.
Процедуры и функции – специальные программы, которые могут выполнять повторяющиеся участки с разными начальными данными (параметрами). В нужный момент описанные заранее они вызываются на выполнение. Могут быть стандартные (встроенные) и пользовательские процедуры и функции. Конструкцией, описанной выше, задаются пользовательские. Стандартные же не описываются, но требуют подключения соответствующих библиотечных файлов, содержащих их описание. Например, при использовании функции вывода printf() необходимо подключить #include <stdio.h> .
Основные типы данных
Любые данные характеризуются своими типами. Тип определяет множество допустимых значений, которые может иметь тот или иной объект, операции, применимые к нему, а также формат внутреннего представления. В С++ требуется задавать тип переменной перед ее использованием.
Рассмотрим простые типы и их разновидность – порядковые типы. Порядковый тип назван так потому, что его значения относятся к упорядоченному множеству, всегда можно сказать, какое следующее, какое предыдущее значение, какой порядковый номер у значения (табл. 2).
Таблица 2
|
№ |
Обозначение |
Диапазон |
Тип данных |
|
1 |
short, short int, signed short , signed short int |
-32768... 32767 |
Короткое целое со знаком |
|
2 |
unsigned short, unsigned short int |
0...65535 |
Короткое целое без знака |
|
3 |
int, signed, signed int |
Зависит от реализации |
Целое |
|
4 |
unsigned, unsigned int |
Зависит от реализации |
Целое без знака |
|
5 |
long, signed long, long int |
-2147483648… 2147483647 |
Длинное целое со знаком |
|
6 |
unsigned long |
0...4294967295 |
Длинное целое без знака |
Символьный тип определяется зарезервированным словом CHAR и задает полный набор ASCII-символов (табл. 3).
Таблица 3
|
№ |
Обозначение |
Диапазон |
Тип данных |
|
1 |
char, signed char |
-128...127 |
Символьный со знаком |
|
2 |
unsigned char |
0...255 |
Символьный без знака |
Другая разновидность простых типов – вещественный тип. Имеется пять стандартных типов для представления дробных величин (табл. 4).
Таблица 4
|
№ |
Обозначение |
Диапазон |
Тип данных |
|
1 |
float |
-3.4e-38... 3.14e+38 |
Вещественное число с плавающей точкой |
|
2 |
double |
-1.7е-308..1.7е308 |
Вещественное число удвоенной точности |
|
3 |
long double
|
-3.4e-4932... 3.4e4932 |
Длинное вещественное число удвоенной точности |
Для непосредственного обозначения логических значений в C++ используются целочисленные значения 0 - ложь и 1 - истина. Кроме того, в логических операциях любое ненулевое значение операнда ассоциируется с единицей. Поэтому отрицанием нулевого значения является 1, т.е. истина, а отрицанием любого ненулевого значения оказывается 0, т.е. ложь.
Тип void (отсутствие типа) не имеет ни значений, ни действий.
