ЛАБОРАТОРНАЯ РАБОТА №1
ТИПЫДАННЫХ ЯЗЫКА C.
ФОРМАТИРОВАННЫЙ ВВОД И ВЫВОД ДАННЫХ
Цель работы: изучение основных типов данных, способов описания переменных различных типов, операторов присваивания и организации ввода-вывода.
Требования к оформлению отчета
Документ с отчетом по лабораторной работе должен соответствовать следующим требованиям по форматированию: шрифт Times New Roman, размер 14; межстрочный интервал 1,15; красная строка – отступ 1,25; поля: верхнее и нижнее – 2 см, левое – 3 см, правое – 1,5 см. Интервал между абзацами одного стиля – отсутствует.
Текст отчета по лабораторной работе долженс одержать:
– название и цель работы;
– индивидуальное задание;
– блок-схему программы;
– распечатку кода программы и результатов ее выполнения;
– пояснительный текст к программе (описание структуры программы, назначения ее основных переменных, способов реализации отдельных функций и т.д.);
– выводы, которые должны доказывать или оценивать правильность составленной программы или объяснять допущенные ошибки.
Краткая теория
Типы данных
Язык C предоставляет базовые арифметические типы, а также синтаксис для создания массивов и составных типов.
С учетом последних стандартов в языке определены следующие типы данных:
• bool – булевский (логический) тип, способный хранить значения 0 («ложь») или 1 («истина»); этот тип данных появился в последних стандартах языка С и для его использования к программе нужно подключить заголовочный файл stdbool.h,
• char – символьный тип (как правило, размером 1 байт), способный хранить один символ,
• пять стандартных знаковых целых типов:
- signed char – однобайтовое целое число,
- short int – «короткое» целое число,
- int – целое число стандартной длины (для данной архитектуры),
- long int – «длинное» целое число,
- long long int – «сверхдлинное» целое число.
• пять соответствующих им беззнаковых целых типов:
unsigned char, unsigned short int, unsigned int,
unsigned long int, unsigned long long int,
• три стандартных типа вещественных чисел:
- float – число одинарной точности,
- double –число двойной точности,
- long double – число максимальной точности.
Кроме того, в стандарте С99 была добавлена возможность указывать точный размер целочисленных переменных (в битах) с помощью новых типов, определенных в заголовочном файле stdint.h. Некоторые из новых типов:
• четыре знаковых целых типа:
- int8_t –однобайтовое целое число;
- int16_t – двухбайтовое целое число;
- int32_t – четырехбайтовое целое число;
- int64_t – восьмибайтовое целое число;
• четыре беззнаковых целых типа: uint8_t, uint16_t, uint32_t, uint64_t.
Ввод и вывод данных
В языке C/C++ нет встроенных средств ввода и вывода – он осуществляется с помощью функций, типов и объектов, которые находятся в стандартных библиотеках.
Для ввода/вывода данных в C используются функции, которые описываются в библиотечном файле stdio.h.
· printf (форматная строка, список аргументов);
форматная строка – строка символов, заключенных в кавычки, которая показывает, как должны быть напечатаны аргументы.
Например: printf (”Значение числа Пи равно %f\n”, pi);
Форматная строка может содержать:
- символы печатаемые в текстовом виде;
- спецификации преобразования;
- управляющие символы.
Каждому аргументу соответствует своя спецификация преобразования:
% d, % i – десятичное целое число;
% f (%lf для scanf() при типе double) – число с плавающей точкой;
% e – число с плавающей точкой в экспоненциальной форме;
% u – десятичное число в беззнаковой форме;
% c – символ;
% s – строка;
% p – указатель,
% x – шестнадцатеричное представление;
% o –восьмеричное представление.
В форматную строку также могут входить управляющие символы:
\ a – подача звукового сигнала,
\ b – возврат назад и затирание,
\ f – прогон страницы,
\ n – конец строки,
\ r – возврат каретки,
\ t – горизонтальная табуляция,
\v – вертикальная табуляция,
\\ – обратная косая черта,
\? – вопросительный знак,
\' – одинарная кавычка,
\" – двойная кавычка,
\000 – восьмеричное число,
\ xhh – шестнадцатеричное число,
\0 – нулевой байт.
Также в форматной строке могут использоваться модификаторы формата, которые управляют шириной поля, отводимого для размещения выводимого значения.
Модификаторы – это числа, которые указывают минимальное количество позиций для вывода значения и количество позиций для вывода дробной части числа:
%[-] m [. p ] C, где
– '–' задает выравнивание по левому краю,
m – минимальная ширина поля,
p – количество цифр после запятой для чисел с плавающей точкой и минимальное количество выводимых цифр для целых чисел (если цифр в числе меньше, чем значение р, то выводятся начальные нули),
С – спецификация формата вывода.
· scanf(форматная строка, список аргументов);
В качестве аргументов используются адреса переменных.
Например: scanf(“%d %f”, &x, &y);
Начало работы со средой программирования
Создание консольного приложения в среде Dev-C++
1. Создать папку для хранения будущего приложения.
2.
Запустить среду Dev-C++ из списка установленных приложений.
3. Создать новый проект (рис. 1): Файл®Создать®Проект.
Рисунок 1 – Начало создания проекта в среде Dev-C++
4. Задать начальные установки и имя проекта (рис. 2).
Рисунок 2 – Начальные установки проекта
5. Сохранить проект в заранее созданную папку (рис. 3).
Рисунок 3 – Сохранение проекта
6. Набрать код в открывшемся редакторе.
7. Выполнить компиляцию проекта (рис. 4).
Рисунок 4 – Компиляция проекта
8. Тестирование работы приложения (рис. 5-6).
Рисунок 5 – Тестирование приложения
Рисунок 6 – результаты работы программы