68977

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

Лекция

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

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

Украинкский

2014-09-28

30 KB

1 чел.

Лекція № 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, оскільки умови закінчення циклів не пов'язані з властивостями, тобто з розміщенням елементів масиву.


 

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

84830. The subject of Phonetics. Phonetics in the System of linguistics 41.5 KB
  Neither linguistic theory nor linguistic practice can do without Phonetics. Phonetics is connected with linguistic and non-linguistic sciences: acoustics, physiology, psychology, logic and others. When we look at the parts of the body which are used in speaking, we make use of information from anatomy...
84832. Некоторые методы возведения зданий 114.6 KB
  Место сопряжения оползневого тела с надоползневым коренным уступом называется тыловым швом оползня а место выхода поверхности скольжения в низовой части склона подошвой оползня. Схема оползневого склона: 1 первоначальное положение склона 2 ненарушенный склон 3 оползневое тело 4 поверхность скольжения...
84833. Соціологія особистості. Структурні елементи особистості 27.88 KB
  Особистість — це цілісна сукупність соціальних властивостей людини, що формуються та видозмінюються протягом усього життя людини у результаті складної взаємодії внутрішніх та зовнішніх чинників її розвитку та активної взаємодії з соціальним середовищем.
84834. Философия как разновидность мировоззрения 135.48 KB
  Крупнейшие и наиболее распространенные в мире национальные религии: синтоизм; индуизм; иудаизм. Часто эклектика применялась для обоснования каких-либо взглядов идей привлекательных для массового сознания но не имеющих реальной ни онтологической ни гносеологической ценности и достоверности...
84835. Міжнародні відносини у структурі суспільних відносин 220.5 KB
  Місце міжнародної проблематики в історії суспільно-політичної думки вирішальною мірою пов’язане з тенденціями та закономірностями розвитку міжнародних відносин, відбиваючи та суттєво впливаючи на них.
84836. Спрос, предложение и рыночное равновесие. Эластичность спроса и предложения 372.96 KB
  В рассматриваемой теме рассматриваются понятия, которые описывают механизм функционирования рынков экономических благ: спрос, предложение, рыночное равновесие, равновесная цена, равновесный объем производства, эластичность спроса, эластичность предложения.
84837. Теория поведения потребителя 61.25 KB
  Рынок – это экономическая система, ориентированная на потребителя. Этим обстоятельством объясняется интерес экономической науки к тому, как ведет себя потребитель, какими мотивами он руководствуется, делая выбор благ, каковы закономерности, управляющие его поведением на рынке.
84838. Исследование функций. Возрастание и убывание функций 65.09 KB
  Такие функции называют монотонными в интервале а b. Точка называется точкой максимума функции у = f x если cуществует такая окрестность точки что для всех из этой окрестности выполняется неравенство fx f. Точка называется точкой минимума функции у = f x если cуществует такая окрестность...