
- •Форматный ввод/вывод данных.
- •1.Форматный вывод
- •2.Форматный ввод .
- •Операции языка с.
- •Лабораторная работа №1 Данные. Типы данных. Приведение типов. Циклы Теоретическая часть Типы данных
- •Оператор sizeof
- •Преобразования типов.
- •Примеры программ
- •Задание на лабораторную работу № 1
- •Операторы организации условных и безусловных переходов.
- •If (проверка_условия) инструкция_1; else инструкция_2;
- •Примеры программ
- •Задание на лабораторную работу № 2
- •Массивы.
- •Строки символов.
- •Структуры.
- •Оператор typedef.
- •Битовые поля.
- •Смеси (объединения).
- •Перечисляемый тип данных.
- •Примеры программ
- •Задание на лабораторную работу № 3
- •Примеры программ
- •Классы памяти.
- •Указатели на функции.
- •Рекурсия.
- •Примеры программ
- •Задание на лабораторную работу № 5
- •Контрольные вопросы:
- •Рекомендуемая литература
Лабораторная работа №1 Данные. Типы данных. Приведение типов. Циклы Теоретическая часть Типы данных
Программы оперируют с различными данными, которые могут быть простыми и структурированными. Простые данные - это целые и вещественные числа, символы и указатели (адреса объектов в памяти). Целые числа не имеют, а вещественные имеют дробную часть. Структурированные данные - это массивы, записи и файлы.
В языке различают понятия «тип данных» и «модификатор типа». Тип данных - это, например, целый, а модификатор - со знаком или без знака. Целое со знаком будет иметь как положительные, так и отрицательные значения, а целое без знака - только положительные значения. В языках С и С++ можно выделить пять базовых типов, которые задаются целующими ключевыми словами: char - символьный; int - целый: float - вещественный; double - вещественный двойной точности; void - не имеющий значения. Дадим им краткую характеристику:
1. Переменная типа char имеет размер 1 байт. Ее значениями являются различные символы из кодовой таблицы, например: 'ф'. ':', 'j' (при записи в программе они заключаются в одинарные кавычки).
2. Переменная типа int имеет размер 2 байт. Знаковые значения этой переменной могут лежать в диапазоне от -32768 до 32767.
3. Ключевое слово float позволяет объявить переменные вещественного типа. Их значения имеют дробную часть, .отделяемую точкой, например: -5.6, 31.28 и т. п. Вещественные числа могут быть записаны также в форме с плавающей точкой, например: -l.09e+4 (что равно -1.098·104). Число перед символом е называется мантиссой, а после е - порядком. Переменная типа float занимает в памяти 32 бита. Она может принимать значения в диапазоне от 3.4е-38 до 3.4e+38.
4. Ключевое слово double позволяет объявить вещественную переменную двойной точности. Она занимает в памяти в два раза больше места, чем переменная типа float (т. е. ее размер 64 бита). Переменная типа double может принимать значения в диапазоне от l.7e-308 до l.7e+308.
5. Ключевое слово void используется для нейтрализации значения объекта, например для объявления функции, не возвращающей никаких значений.
Объект некоторого базового типа может быть модифицирован. С этой целью используются специальные ключевые слова, называемые модификаторами. Пока рассмотрим только четыре из них: unsigned, signed, short, long. Модификаторы записываются перед спецификаторами типа, например: unsigned char. Если после модификатора опущен спецификатор, то компилятор предполагает, что этим спецификатором является int. Таким образом, следующие строки:
long а; long int а:
являются идентичными и объявляют объект а как длинный целый. Таблица 2 иллюстрирует возможные сочетания модификаторов (unsigned, signed, short, long) со спецификаторами (char, int. float и double), a также показывает размер и диапазон значений объявляемого объекта.
Таблица 2
Тип |
Размер |
Диапозон |
Char |
|
|
signed char |
8 |
-128 |
unsigned char |
8 |
0-255 |
Int |
|
|
signed int |
|
|
short int |
|
|
signed short int |
16 |
-32768-32767 |
unsigned int |
|
|
unsigned short int |
16 |
0-65535 |
long int |
|
|
signed long int |
32 |
-2’147’483’648-2’147’483’647 |
unsigned long int |
32 |
0-4’294’967’295 |
Float |
32 |
3.4e-38-3.4e+38 |
Double |
64 |
1.7e-308-1.7e+308 |
long double |
80 |
3.4e-4932-1.1e+4932 |
В языке определены глобальные и локальные объекты. Первые объявляются вне функций и, следовательно, доступны для любой из них. Локальные объекты по отношению к функциям являются внутренними. Они начинают существовать при входе в функцию и уничтожаются после выхода из нее.
В языке С все объявления должны следовать перед инструкциями, составляющими тело функции. В языке С++ это ограничение снято и объявления могут следовать в любом месте программы. Если они сделаны в функции, то соответствующие объекты будут локальными, а если вне функций, то глобальными.
Тип void
Ключевое слово void означает отсутствие информации о размере объекта. Его используют для объявления функций, которые не имеют аргументов и не возвращают никаких значений
Пример
void main(void)