68977

Одновимірні та багатовимірні масиви

Лекция

Информатика, кибернетика и программирование

Відповідно до синтаксису Сі в мові існують тільки одновимірні масиви, проте елементами одновимірного масиву, у свою чергу, можуть бути масиви. Тому двовимірний масив визначається як масив масивів. Таким чином, в прикладі визначений масив Z з 13 елементів-масивів, кожний з яких...

Украинкский

2014-09-28

30 KB

0 чел.

Лекція № 4

Тема: Одновимірні та багатовимірні масиви

План

  1.  Масиви і змінні з індексами
  2.  Впорядкування одновимірних масивів
  3.  Символьні масиви

Масиви і змінні з індексами.

Математичним поняттям, яке привело до появи в мовах програмування поняття "масив", є матриця і її окремі випадки: вектор-стовбець або вектор-рядок. Елементи матриць в математиці прийнято позначати з використанням індексів. Суттєво, що всі елементи матриць або дійсні, або цілі і т.д. Така "однорідність" елементів властива і масиву, визначення якого описує тип елементів, ім'я масиву і його розмірність, тобто число індексів, необхідне для визначення конкретного елемента. Крім того, у визначенні вказується кількість значень, яка приймаються кожним індексом. Наприклад, int а[10]; визначає масив з 10 елементів а[0], а[1] ..., а[9]. float Z[13][[6]; визначає двовимірний масив, перший індекс якого приймає 13 значень від 0 до 12, другий індекс приймає 6 значень від 0 до 5. Таким чином, елементи двовимірного масиву Z можна перерахувати так:

Z[0][0],   Z[0][l],   Z[0][2],...,Z[12][5]

Відповідно до синтаксису Сі в мові існують тільки одновимірні масиви, проте елементами одновимірного масиву, у свою чергу,

можуть бути масиви. Тому двовимірний масив визначається як масив масивів. Таким чином, в прикладі визначений масив Z з 13 елементів-масивів, кожний з яких, у свою чергу, складається з 6 елементів типу float. Нумерація елементів будь-якого масиву завжди починається з 0, тобто індекс змінюється від 0 до N-1, де N - кількість значень індексу.

Обмежень на розмірність масивів, тобто на число індексів, в мові Сі теоретично немає. Стандарт мови Сі вимагає, щоб транслятор міг обробляти визначення масивів з розмірністю до 31. Проте частіше всього використовуються одновимірні і двовимірні масиви.

Впорядкування в одновимірних масивів

Необхідно, ввівши значення змінної 1 <n<=100 і значення n перших елементів масиву а[0],а[1],...,а[n-1], впорядкувати ці перші елементи масиву за збільшенням їх значень. Текст першого варіанту програми:

/* Впорядкування елементів масиву */

#include <stdio.h>

main( )

{

int n,і,j;

double а[100],b;

while(1)

{                                         

printf("\n Введіть кількість елементів n=");

scanf("%d",&n);

if (n > 1 && n <= 100) break;

printf{"Помилка! Необхідно 1<n<=100!");

}

printf("\n Введіть значення елементів " масиву:\n");

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

{

printf("а[%d]=", j+1);

scanf("%lf",&a[j]);

}

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

for(j=i+l;   j<n;   j++)

if(а[i]>a[j])

{

b=a[i];

а[i]=a[j];

а[j]=b;

}

printf("\n Впорядкований масив: \n");

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

printf("а[%d]=%f\n",j +1,a[j]);

}

При заповненні масиву і при друку результатів його впорядкування індексація елементів виконана від 1 до n, як це звичайно прийнято в математиці. В програмі на Сі це відповідає зміні індексу від 0 до (n-1). В програмі реалізований алгоритм прямого впорядкування  кожний елемент а[i], починаючи з а[0] і кінчаючи а[n-2], порівнюється зі всіма подальшими, і на місце а[i] вибирається мінімальний. Таким чином, а[0] приймає мінімальне значення, а[1] - мінімальне з тих, що залишилися і т.д. Недолік цього алгоритму полягає в тому, що в ньому фіксоване число порівнянь, не залежне від початкового розташування значень елементів. Навіть для вже впорядкованого масиву доведеться виконати ту ж саму кількість ітерацій (n-1)*n/2, оскільки умови закінчення циклів не пов'язані з властивостями, тобто з розміщенням елементів масиву.


 

А также другие работы, которые могут Вас заинтересовать

3167. Изучение управление производством хозяйства СПК Березовый Мыс Шумихинского района 135.05 KB
  Резкий переход к рыночной экономике вызвал большие изменения в сельском хозяйстве России. Существенную трансформацию претерпевают организационная структура АПК, система управления, земельные отношения, принципы функционирования экономическо...
3168. Генерация перестановок 110 KB
  Генерация перестановок Дано конечное множество A. Требуется сгенерировать все возможные перестановки его элементов в лексикографическом порядке (по материалам главы 1, п. 1.3.6, и главы 2, п. 2.2.1). Требования к заданию множества – в нем не до...
3169. Исследование температурно-влажностного режима помещения 192.5 KB
  Исследование температурно-влажностного режима помещения Цель работы: знакомство с основными параметрами микроклимата помещений, способами их определения и методикой оценки санитарно-гигиенических условий, исходя из требований строительных и гигиенич...
3170. Исследование естественной освещенности помещений в натурных условиях 109.5 KB
  Исследование естественной освещенности помещений в натурных условиях Цель работы: знакомство с методикой и приборами, используемыми при исследовании естественной освещенности помещений, выяснение роли размеров и размещения световых проемов в формиро...
3171. Исследование условий инсоляции отдельных зданий с помощью инсолятора 99 KB
  Исследование условий инсоляции отдельных зданий с помощью инсолятора Цель работы: знакомство с требованиями, предъявляемыми к инсоляции отдельных зданий и внутриквартальных территорий, а также методами определения оптимальной ориентации зданий с пом...
3172. Исследование стальных канатов 53.29 KB
  Исследование стальных канатов. Цель работы: Исследование конструкций и элементов стальных канатов, изучение схем их обозначений, определение основных параметров, ознакомление с методом браковки канатов. Исследование ко...
3173. Конкурсная коллекция современного женского костюма с использованием элементов этно-стиля 2.07 MB
  Актуальность: В наши дни этнический стиль уже завоевал ведущие позиции в мире моды и не собирается их уступать. Основными причинами этого являются свобода, многообразие, естественность, яркость, которые несет с собой этот стиль. Его последо...
3174. Хроническая артериальная ишемия конечностей 12.63 MB
  Введение Хронические артериальные ишемии конечностей доставляют много забот врачам различных специальностей. Каждый из них ощущает недостаточность имеющихся сведений об ишемиях конечностей, дающих возможность успешного лечения больного. Эти сведения...
3175. Статистическая точность цифровых регуляторов дискретных систем управления частотой вращения электропривода постоянного тока 11.66 MB
  Автоматизированные электроприводы являются главным средством приведения в движение большинства рабочих машин и технологических агрегатов в машиностроении, металлургии, станкостроении, транспорте и других отраслях промышленности.