Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
mL_4_Vvod_vyv_07.doc
Скачиваний:
2
Добавлен:
29.04.2019
Размер:
156.67 Кб
Скачать

Особенности неформатированного ввода строки

Ввод строковых констант выполняется с помощью функции gets(аргумент),

где аргумент – адрес переменной, которая должна быть объявлена в виде массива или указателя. Вводятся все символы до нажатия клавиши  Enter , в том числе и пробелы.

Вывод строковых переменных и констант выполняется с помощью функции puts(аргумент), где аргумент – переменная, объявленная в виде массива или указателя, или строковая константа, заключенная в двойные кавычки. На экран выводятся все символы до символа ‘\0’, в том числе и пробелы.

Например:

#include <stdio.h>

void main ()

{ char s[10];

puts(“Введите строку не больше 10 символов”);

gets(s);

puts(“Введенная строка”);

puts(s); }

На экране выведется:

Введите строку не больше 10 символов

abcdefg //вводимая строка

Введенная строка

abcdefg

Ввод-вывод данных в языке С++

В языке С++ в заголовочном файле  iostream.h  имеются операции включения данных в поток  cin  и извлечения данных из потока  cout .

Вывод на экран осуществляется с помощью записи cout<<аргумент , где аргумент  – это переменная, константа или любое унарное выражение, значение которой выводится на экран.

Ввод данных с клавиатуры осуществляется с помощью записи –  cin>>аргумент , где аргумент  – это имена переменных, куда должны вводиться числа с клавиатуры.

Эти операции реализованы так, что они автоматически распознают тип переменной или константы, расположенной справа. Например:

int a=5;

cout<<a; // вывод на экран цифры 5

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

float pi=3.14;

int c=30;

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

cout<<с; // вывод на экран числа 30

Возможна последовательная запись операций (“цепочки”):

cout<<”pi=”<<pi; // вывод на экран pi=3.14

char ch1,ch2; double d1,d2;

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

В этом случае значения переменных можно вводить через пробелы (один или несколько) либо нажатием клавиши  Enter .

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

Для организации ввода-вывода с помощью рассмотренных операций предусмотрено множество флагов и манипуляторов, которыми можно задавать выравнивание, точность, ширину, систему счисления. Некоторые их них:  left ,  right ,  dec ,  oct ,  hex ,  showpoint ,  scientific ,  endl ,  flush .

int A;

cout<<”Введите целое число:”<<flush<<endl;

cin>>A;

cout<<”Число A в 10CC=”<<A<<” в 8CC=”<<oct<<A<<” в 16CC=”<<hex<<A<<endl;

//printf(”Число A в 10CC=%d в 8CC=%o в 16CC=%x\n”,A,A,A,A);

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]