Функция форматированного вывода printf

Функция форматированного вывода printf( ):

printf(форматная_строка,список_вывода);

Список_вывода – это переменная, константа или любое унарное выражение. Форматная_строка последовательность символов в двойных кавычках, в которой с помощью спецификаторов можно задавать способ преобразования данных. Спецификаторы– это символы, которые начинаются знаком %.:

int a=2,b=5;

printf("a=%d, b=%d, с=%d, сумма=%dn",а,b,9,a+b);

A=2, b=5, с=9, сумма=7

char str[20]="ZNTU";

printf("%s",str); //вывод строки без перевода на начало новой строки

Спецификаторы преобразования задается в виде:

%[флаги][ширина][.точность][l|L]<тип>

Ширина определяет минимальное количество позиций, которые отводятся для вывода данных.

Printf("%2d", 400); // 400

Printf("%7d", 400); // ðððð400

Точность задается для вещественных чисел и определяет, сколько знаков после точки из общей ширины поля будет напечатано. Общая ширина поля для вещественных чисел включает символы: знак числа, целая часть числа, точка, дробная часть числа, (для чисел в экспоненциальной форме еще символы: признак порядка Е, знак порядка, значение порядка).

Printf("%8.3f",5.3334); // ððð5.333

Printf("%10.2e",-55.3334); // ð–5.53e+01

Флаги.

· Знак "–" задает выравнивание числа влево. Справа будут пробелы.

Printf("%–6dkm",30); // 30ððððkm

Printf("%–8.3sm", "ABCDEF"); // ABCðððððm

· Знак "+" задает вывод перед числом арифметического знака числа, т.е. перед числами будут печататься знаки "+" и "". Иначе печатается только –.

Printf("%+d",300); // +300

Printf("%+d",-300); // -300

· Знак ”пробела” задает вывод перед положительным числом пробела.

Printf("%ðd",300); // ð300

Printf("%ðd",–300); // –300

· Знак ”#” определяет вывод идентификатора системы счисления.

Printf("%#o", 64); // 0100 в 8-ой СС

Printf("%#х", 50); // 0х32 в 16-ой СС

Функция форматированного ввода scanf( ):

scanf(форматная_строка,список_ввода);

Список_ввода – это адреса переменных, куда должны вводиться значения переменных после преобразования. Форматная_строка последовательность типов преобразования в двойных кавычках, которые начинаются знаком %.

float g; int a,b;

Scanf("%f",&g); //.

char str[20]; scanf("%s",str);//ввод строки до первого разделителя (пробел или… fflush(stdin); //очистка буфера от не выведенных символов

Gets(str); //ввод строки с пробелами до нажатия клавиши Enter

puts("%s",str); //вывод строки c переводом на начало новой строки

Функции ввода-вывода в языке С++

Функция cout<< – вывод данных на экран, а функция cin>> – ввод данных с клавиатуры. Описаны в файле iostream.h.

int a=5; float f=3.14;

Cout<<a; //вывод на экран числа5

Cout<<f; //вывод на экран числа3.14

Cin>>а; //ввод с клавиатуры значения переменнойа

Cin>>f; //ввод с клавиатуры значения переменнойf

char ch1,ch2; double d1,d2;

cin>>ch1>>d1>>d2>>ch2;