Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Вывод одномерного массива на экран.






Для компактности изображения массива на экране в каждой строке экрана целесообразно печатать несколько элементов массива.

Пусть формат вывода элемента вещественного массива имеет вид 8: 2. Устанавливая между числами два пробела, в одной строке экрана можно разместить 8 чисел (строка экрана содержит 80 позиций). Тогда программа вывода может иметь вид:

 

.....................

k=0;

for (i=0; i< n; i++)

{

k++;

if (k< 8)

printf(" %8.2lf ", x[i]);

else

{

k=0;

printf(" %8.2lf\n", x[i]);

}

}

if (k> 0) printf(" \n");

.....................

 

Переменная k - это счетчик количества чисел, выводимых в одну строку экрана. Пока k < 8, функция printf(" %8.2lf ", x[i]) размещает очередные элементы массива в одной и той же строке экрана через 2 пробела. При k = 8 после вывода числа производится переход на следующую строку экрана printf(" %8.2lf\n", x[i]), при этом счетчику k присваивается нулевое значение.

 

Предположим, что в массиве X количество элементов не кратно 8. Тогда вывод последнего элемента будет осуществлен без перехода на новую строку экрана. Если в программе после вывода массива X выполняется еще вывод хотя бы одного числа, то это число будет размещено в той же строке экрана, где расположен элемент , что по крайней мере неэстетично. Для предотвращения такой ситуации в вышеприведенной программе записан оператор " if (k> 0) printf(" \n"); ".

 
 

 

 


Если известно, что печатаемые значения будут занимать менее, например, 8 символов, то можно воспользоваться оператором:

for(i=0; i< n; i++) printf(" %8.2lf", x[i]);

без использования счетчика выведенных значений. В этом случае, в строке распечатается 10 значений, разделенных, по меньшей мере, одним пробелом, после чего курсор автоматически будет переведен на следующую строку. Этот способ уменьшает сложность программы печати значений массива и применим в тех случаях, когда можно в формате печати задать длину поля числом, на которое 80 будет делиться без остатка.

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.