Презентация по информатике на тему Ввод-вывод в С/С++


Ввод-вывод в СиВвод-вывод в Си++ Ввод-вывод в СиВ языке Си нет операторов ввода-вывода.Ввод и вывод информации осуществляется через функции стандартной библиотеки. Прототипы рассматриваемых функций находятся в файле stdio.h. Эта библиотека содержит функцииprintf() - для вывода информацииscanf() - для ввода информации. Вывод информацииФункция printf() предназначена для форматированного вывода. Она переводит данные в символьное представление и выводит полученные изображения символов на экран. При этом у программиста имеется возможность форматировать данные, то есть влиять на их представлениена экране.Общая форма записи функции printf():printf("СтрокаФорматов", объект1, объект2, ..., объектn);СтрокаФорматов состоит из следующих элементов:управляющих символов;текста, представленного для непосредственного вывода;форматов, предназначенных для вывода значений переменных различных типов.Объекты могут отсутствовать. Управляющие символыУправляющие символы не выводятся на экран, а управляют расположением выводимых символов. Отличительной чертой управляющего символа является наличие обратного слэша '\' перед ним.Основные управляющие символы:'\n' — перевод строки;'\t' — горизонтальная табуляция;'\v' — вертикальная табуляция; ФорматыФорматы нужны для того, чтобы указывать вид, в котором информация будет выведена на экран. Отличительной чертой формата является наличие символа процент '%' перед ним:%d — целое число типа int со знаком в десятичной системе счисления;%u — целое число типа unsigned int;%x — целое число типа int со знаком в шестнадцатеричной системе счисления;%o — целое число типа int со знаком в восьмеричной системе счисления;%hd — целое число типа short со знаком в десятичной системе счисления;%hu — целое число типа unsigned short; %hx — целое число типа short со знаком в шестнадцатеричной системе счисления;%ld — целое число типа long int со знаком в десятичной системе счисления;%lu — целое число типа unsigned long int;%lx — целое число типа long int со знаком в шестнадцатеричной системе счисления;%f — вещественный формат (числа с плавающей точкой типаfloat);%lf — вещественный формат двойной точности (числа с плавающей точкой типа double);%e — вещественный формат в экспоненциальной форме (числа с плавающей точкой типа float в экспоненциальной форме);%c — символьный формат;%s — строковый формат. Примерint a=6;float x = 2.58;printf("\n Значение переменной a=%d", a);printf("\n Значение переменной x=%f", x);Результат работы программы Значение переменной a=6 Значение переменной x=258При указании формата можно явным образом указать общее количество знакомест и количество знакомест, занимаемых дробной частью. Примерfloat y=1.2345;printf("\n Значение переменной y=%10.5\n", y);Результат работы программыЗначение переменной y=   1.23450В приведенном примере 10 — общее количество знакомест под значение переменной; 5 — количество позиций после десятичной точки. В указанном примере количество знакомест в выводимом числе меньше 10, поэтому свободные знакоместа слева от числа заполняются пробелами. Такой способ форматирования часто используется для построения таблиц. Ввод информацииФункция форматированного ввода данных с клавиатуры scanf() выполняет чтение данных, вводимых с клавиатуры, преобразует их во внутренний формат и передает вызывающей функции. При этом программист задает правила интерпретации входных данных с помощью спецификаций форматной строки.Общая форма записи функции scanf( )scanf ("CтрокаФорматов", адрес1, адрес2,...);Строка форматов аналогична функции printf(). Для формирования адреса переменной используется символ амперсанд '&':адрес = &объектСтрока форматов и список аргументов для функции обязательны. Поточный ввод-вывод в C++В С++, как и в С, нет встроенных в язык средств ввода-вывода.В С для этих целей используется библиотека stdio.h.В С++ разработана новая библиотека ввода-вывода iostream, использующая концепцию объектно-ориентированного программирования:#include <iostream>Библиотека iostream определяет три стандартных потока:cin  стандартный входной поток (stdin в С)cout  стандартный выходной поток (stdout в С)cerr  стандартный поток вывода сообщений об ошибках (stderr в С).  Для выполнения операций ввода-вывода переопределены две операции поразрядного сдвига:>>  получить из входного потока<<  поместить в выходной поток Вывод информацииcout << значение;Здесь значение преобразуется в последовательность символов и выводится в выходной поток:cout << n;Возможно многократное назначение потоков:cout << 'значение1' << 'значение2' << ... << 'значение n';int n;char j;cin >> n >> j;cout << "Значение n равно" << n << "j=" << j; Ввод информацииcin >> идентификатор;При этом из входного потока читается последовательность символов до пробела, затем эта последовательность преобразуется к типу идентификатора, и получаемое значение помещается в идентификатор:int n;cin >> n;Возможно многократное назначение потоков:cin >> переменная1 >> переменная2 >>...>> переменнаяn;При наборе данных на клавиатуре значения для такого оператора должны быть разделены символами (пробел, \n, \t).int n;char j;cin >> n >> j; Ввод символьных строкПо умолчанию потоковый ввод cin вводит строку до пробела, символа табуляции или перевода строки.Пример#include <iostream>using namespace std;int main() {  char s[80];  cin >> s;  cout << s << endl;  system("pause");  return 0;} Для ввода текста до символа перевода строки используется манипулятор потока getline():#include <iostream>int main() {  char s[80];  cin.getline(s,80);  cout << s << endl;    return 0;} cinС помощью объекта cin и операции >> можно присвоить значение любой переменной. Например, если переменная x описана как целочисленная, то команда cin>>x; означает, что в переменную x будет записано некое целое число, введенное с клавиатуры. Если необходимо ввести несколько переменных, то следует написать cin>>x>>y>>z;. coutОбъект cout и операция << позволяет вывести на экран значение любой переменной или текст. Текст необходимо заключать в двойные кавычки. Записьcout<<x; означает вывод на экран значения переменной x.