[H-L-L.ru] |
Форма входа |
Меню сайта |
Главная » Статьи » Лекции по C++ » 5. Многомерные массивы |
Ввод и вывод многомерных массивов В программе осуществляется ввод/вывод массива massiv типа int, состоящего из трех строк и двух столбцов. При вводе массива во внешнем цикле изменяются строки, а во внутреннем – столбцы. В результате массив вводится по строкам. Вывод массива организован так же. Для удобного чтения, перед выводом каждой строки осуществляется перевод строки оператором cout<<”\n” и вставляются пробелы между элементами с помощью оператора cout<<' '.
int i,j,massiv[3][2]; //описание массива cout<<RUS("Введите massiv[3][2]\n"); for(i=0;i<3;i++) //ввод массива for(j=0;j<2;j++) cin>>massiv[i][j]; cout<<"massiv[3][2]\n"; for(i=0;i<3;i++) //вывод массива {cout<<"\n"; for(j=0;j<2;j++) cout<<' '<<massiv[i][j];} Такой вывод, однако, недостаточно хорошо выравнивает элементы на экране. Функция cout имеет дополнительные средства, которые позволяют сделать вывод более точным. Для этого задаются поля структуры cout и задается формат выводимых данных.
int i,j; float massiv[3][2]; //описание массива cout<<RUS("Введите massiv[3][2]\n"); for(i=0;i<3;i++) //ввод массива for(j=0;j<2;j++) cin>>massiv[i][j]; cout<<"massiv[3][2]\n\n"; cout<<fixed; for(i=0;i<3;i++) //вывод массива { for(j=0;j<2;j++) {cout.width(10); cout.precision(3); cout<<massiv[i][j];} cout<<"\n"; }
Строка cout.width(10); задает число символов полей вывода. После нее каждый элемент массива, не зависимо от значения, будет занимать ровно 10 символов (т.е. число символов вывода задается в круглых скобках). Для данных различных типов может быть задан формат вывода, например, для вещественных чисел задается число символов после запятой: cout.precision(3); и тип формата: cout<<fixed;//вывод последующих элементов в десятичном формате; cout<< scientific;//вывод последующих элементов в экспоненциальном формате. Полный перечень настроек приводится в приложении I I. Источник: ввод и вывод многомерных массивов выравнивание элементов форматированный | |
Всего комментариев: 0 | |