Ввод и вывод данных
В языке Си++ нет встроенных средств ввода и вывода – он осуществляется с помощью функций, типов и объектов, которые находятся в стандартных библиотеках. Существует два основных способа: функции унаследованные из Си и объекты Си++.
Для ввода/вывода данных в стиле Си используются функции, которые описываются в библиотечном файле stdio.h.
1) printf ( форматная строка, список аргументов);
форматная строка - строка символов, заключенных в кавычки, которая показывает, как должны быть напечатаны аргументы. Например:
printf ( “Значение числа Пи равно %f\n”, pi);
Форматная строка может содержать
1) символы печатаемые текстуально;
2) спецификации преобразования;
3) управляющие символы.
Каждому аргументу соответствует своя спецификация преобразования:
%d, %i - десятичное целое число;
%f - число с плавающей точкой;
%e,%E – число с плавающей точкой в экспоненциальной форме;
%u – десятичное число в беззнаковой форме;
%c - символ;
%s - строка.
В форматную строку также могут входить управляющие символы:
\n - управляющий символ новая строка;
\t – табуляция;
\a – звуковой сигнал и др.
Также в форматной строке могут использоваться модификаторы формата, которые управляют шириной поля, отводимого для размещения выводимого значения. Модификаторы – это числа, которые указывают минимальное количество позиций для вывода значения и количество позиций для вывода дробной части числа:
%[-]m[.p]C, где
1. - задает выравнивание по левому краю,
m – минимальная ширина поля,
p – количество цифр после запятой для чисел с плавающей точкой и минимальное количество выводимых цифр для целых чисел (если цифр в числе меньше, чем значение р, то выводятся начальные нули),
С- спецификация формата вывода.
Пример
printf("\nСпецификации формата:\n%10.5d - целое,\n%10.5f - с плавающей точкой\
\n%10.5e – в экспоненциальной форме\n%10s - строка",10,10.0,10.0,"10");
Будет выведено:
Спецификации формата:
00010 – целое
10.00000 – с плавающей точкой
1.00000е+001 - в экспоненциальной форме
10 – строка.
2) scanf ( форматная строка, список аргументов);
В качестве аргументов используются адреса переменных. Например:
scanf(“ %d%f ”, &x,&y);
При использовании библиотеки классов Си++, Используется библиотечный файл iostream.h, в котором определены стандартные потоки ввода данных от клавиатуры cin и вывода данных на экран дисплея cout, а также соответствующие операции
1) << - операция записи данных в поток;
2) >> - операция чтения данных из потока.
Например:
#include <iostream.h>;
. . . . . . . . .
cout << “\nВведите количество элементов: ”;
cin >> n;
Контрольные вопросы
- Что такое форматная строка? Что содержит форматная строка функции printf? Что содержит форматная строка функции scanf?
- Что такое спецификация преобразования? Привести примеры спецификаций преобразования для различных типов данных.
- Что будет выведено функцией
printf("\nСреднее арифметическое последовательности чисел равно: %10.5f \nКоличество четных элементов последовательности равно%10.5d ",S/n,k); - Как записать вывод результатов из вопроса 3 с помощью операции << ?
- Как выполнить ввод переменных х и у, где x типа long int, а у типа double с помощью функции scanf? С помощью операции >> ?
4. Основные операторы языка Си++»
Дата добавления: 2015-09-18; просмотров: 1142;