Лабораторная работа № 4. Ввод и вывод информации
Рассмотрим следующие способы ввода-вывода информации: потоковый, форматированный, символьный.
Задание
| Краткие теоретические сведения
| 1. Ввести программу, записанную справа, которая использует потоковый вывод данных. Проанализировать ее текст и выполнить.
|
setlocale (LC_CTYPE, " Russian"); используется для вывода русского текста.
Библиотека потоков ввода/вывода опре-деляет: cout – стандартный поток вывода (на экран дисплея); cin – стандартный поток ввода (с клавиатуры); cerr, сlog – стандартный поток сообщений об ошибках. Вывод осуществляется с помощью оператора cout < < …, ввод с помощью оператора cin> > ….
Оператор endlпереводит строку на уровень ниже.
Если в программе записано using namespace std; (используя пространство имен), то перед каждым оператором вывода можно не писать std::
//- начало комментария, конец которого определяется концом строки.
| 2. Добавить в программу п.1 ввод перемен-ных различных типов.
Выполнить вывод этих переменных, используя потоковый вывод с манипуляторами.
Опробовать программу, приведенную в правой части.
| Выражение cin > > x; используется для ввода целого числа с клавиатуры в переменную x (при выполнении программы нужно набрать число на клавиатуре и нажать клавишу Enter) .
При выводе данных могут использоваться манипуляторы: endl – перейти на новую строку; ends – вывести нулевой байт (признак конца строки символов); dec – вывод числа в десятичной системе; oct – вывод числа в восьмеричной системе; hex – вывод числа в шестнадцатеричной системе счисления; setw(int n) – установить ширину поля вывода в n символов; setfill(int n) – символ-заполнитель; setprecision(int n) – установить количество цифр после запятой при выводе вещественных чисел; setbase(int n) – установить систему счисления для вывода чисел (n может принимать значения 0, 2, 8, 10, 16, причем 0 означает систему счисления по умолчанию, т.е. 10). Манипуляторы определены в заголовочном файле < iomanip>, поэтому при их использовании надо добавлять директиву #include < iomanip>.
Пример вывода числа из 6 символов (3 до запятой и 2 после):
using namespace std;
………………………
double x;
cout < < setw(6) < < setprecision(2) < < x < < endl;
| 3. Выполнить прог-рамму, записанную в правой части, которая использует форматированный ввод-вывод данных. Проанализировать текст программы.
Изменить программу так, чтобы выводилась своя фамилия, имя и отчество, факультет, номер группы русскими буквами. При выводе использовать уп-равляющие коды.
| Пример программы, выводящей слово " Privet".
#include < stdio.h>
#include < conio.h>
void main()
{
printf(" \n\t Privet\n");
printf(" \n... Press key");
_getch();
}
| Заголовочный файл с именем stdio.h -стандартный ввод-вывод. Файл conio.h. поддерживает функцию _getch(), которая предназначена для приема сообщения о нажатии клавиши на клавиатуре.
Функция printf() печатает аргументы. С помощью символа \n осуществляется перевод на новую строку. Символ \tосуществляет табуляцию, т.е. начало вывода результатов с отступом вправо.
Функция _getch() ожидает нажатия клавиши.
| Можно управлять перемещением курсора на экране и выполнять некоторые другие функции, используя управляющие коды: \n - перемещает курсор в начальную позицию следующей строки; \t – перемещает курсор в следующую позицию табуляции экрана; \r – выполняет «возврат каретки», перемещая курсор к началу той же строки без перехода на следующую; \b – передвигает курсор только на одну позицию влево.
| 4. Внести изменения в программу п. 5 лабораторной работы № 3 с тем, чтобы осуществлялся форматированный ввод исходных данных с клавиатуры.
| Каждому аргументу функцииprintf() соответствует своя спецификация преобразования, которая начинается с символа процента (%), после которого стоит буква, указывающая тип данных: %d– десятичное целое число; %f– вещественное число типа float или double; %c– символ; %s– строка; %p– указатель; %u– беззнаковое целое число; %o– целые числа в восьмеричной системе счисления; %x– целые числа в шестнадцатеричной системе счисления; %e– вещественное число в экспоненциальной форме.
В модификаторах формата после символа % можно указывать строку цифр, задающую минимальную ширину поля вывода, например: %5d (для целых), %4.2f (для вещественных –две цифры после запятой для поля шириной 4 символа). Если указанной ширины не хватает, происходит автоматическое расширение.
Функция scanf() позволяет вводить в компьютер данные любых типов. В качестве аргументов используются указатели объектов &. Например: scanf(“ %d%f ”, & x, & y);
Если нужно ввести значение строковой переменной, то использовать символ & не нужно. Строка – массив символов, а имя массива эквивалентно адресу его первого элемента:
char name[20];
…………………….
scanf(“%s”, name);
| 5. Написать программу, реализующую диалог, используя пример, записанный в правой части.
| Функция puts() осуществляет вывод символов на экран. Требует подключения #include < stdio.h>.
Функция gets() вводит строку в переменную, записанную в скобках. Параметром puts() может быть строковая переменная: char a[] = “Привет! ”; puts (a);
Функция putchar() предназначена для вывода единичного символа на экран.
Параметром функции может быть символ (например: putchar (‘H’);) или символьная переменная: char letter; letter=’G’; putchar (letter);
Функция getchar() вводит с клавиатуры единичный символ:
int letter; letter = getchar();
|
6. В соответствии со своим вариантом написать программу по условию, приведенному в таблице ниже.
№ варианта
| Условие задачи
|
| Вывести полукруг на консольное окно, закрашенное введенным символом.
|
| Вывести шестиугольник по центру консольного окна, закрашенный введенным символом.
|
| Вывести елочки, закрашенные введенным символом.
|
| Вывести круг по центру консольного окна, закрашенный введенным символом
|
| Вывести треугольник по центру консольного окна, закрашенный введенным символом
|
| Вывести звезду, закрашенную введенным символом.
|
| Вывести трапецию по центру консольного окна, закрашенную введенными символами
|
| Вывести человечка на консольное окно, закрашенного введенным символом.
|
| Вывести разнонаправленные стрелки (→ ↑ ↓ ←), состоящие из введенного символа.
|
| Вывести овал на консольное окно, закрашенный введенным символом.
|
| Вывести квадрат на консольное окно, закрашенный введенным символом.
|
| Вывести знак + на консольное окно, закрашенный введенным символом.
|
| Вывести сердце ♥ на консольное окно, закрашенное введенным символом.
|
| Вывести ромб ♦ на консольное окно, закрашенный введенным символом.
|
| Вывести домик на консольное окно, закрашенный введенным символом.
|
| Вывести грибок, закрашенный введенным символом.
|
В начало практикума
Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...
|
Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...
|
Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...
|
Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...
|
Способы тактических действий при проведении специальных операций Специальные операции проводятся с применением следующих основных тактических способов действий: охрана...
Искусство подбора персонала. Как оценить человека за час Искусство подбора персонала. Как оценить человека за час...
Этапы творческого процесса в изобразительной деятельности По мнению многих авторов, возникновение творческого начала в детской художественной практике носит такой же поэтапный характер, как и процесс творчества у мастеров искусства...
|
Сравнительно-исторический метод в языкознании сравнительно-исторический метод в языкознании является одним из основных и представляет собой совокупность приёмов...
Концептуальные модели труда учителя В отечественной литературе существует несколько подходов к пониманию профессиональной деятельности учителя, которые, дополняя друг друга, расширяют психологическое представление об эффективности профессионального труда учителя...
Конституционно-правовые нормы, их особенности и виды Характеристика отрасли права немыслима без уяснения особенностей составляющих ее норм...
|
|