Реферат: Массивы
B.I.Березн,С.Б.Березн(С.83) МАСИВИ ПОКАЖЧИКИ
Ранше ми ввели типи даних в мов С, як називаються нод банзовими або
вбудованими. На основ цих типв даних мова С дозволя будувати нш типи даних
структури даних. Масив - один з найнбльш простих вдомих структур даних.
Пд масивом в мов С розунмють набр даних одного того ж типу,
збраних пд одним м'ям. Кожний елемент масиву визначаться м'ям масиву
порядковим номенром елемента, який називаться ндексом. ндекс в
мов С завжди цле число.
ОГОЛОШЕННЯ МАСИВУ В ПРОГРАМ
Основна форма оголошення масиву розмрност N така:
тип <м'я масиву>[размер1][размер2]...[размерН]
Частше за все використовуються одновимрн масиви:
тип <м'я масиву> [розмр] ;
тип - базовий тип елементв масиву, розмр - кльксть
елементв одновимрного масиву.
При опис двовимрного масиву оголошення ма наступний вигляд:
тип <м'я масиву> [размер][размер2];
У цьому опис можна трактувати оголошення двовимрного масиву як оголошення
масиву масивв, т. е. масив розмру [размер2], еленментами якого одновимрн
масиви <м'я масиву>[размер1].
Розмр масиву в мов С може задаватися константою або
констаннтним виразом. Не можна задати масив змнного розмру. Для цього
сну окремий механзм, званий динамчним видленням пам'ят.
ОДНОВИМРН МАСИВИ
У мов С ндекс завжди починаться з нуля. Коли ми говоримо про
перший елемент масиву, то мамо на уваз елемент з ндексом 0. Есл ми
оголосили масив
int a[100] ;
це означа, що масив мстить 100 елементв вд а[0] до а[99]. Для
одновимрного масиву легко пдрахувати, скльки байт в пам'ят бунде займати
цей масив:
кльк.байтв=<розмр базового типу>*<кльк.елементв>.
У мов С пд масив завжди видляться безперервне мсце в опенративнй пам'ят.
У мов С не перевряться вихд ндексу за меж масиву. Якщо масив
а[100] описаний як цлочисельний масив, що ма 100 елеменнтв, а ви в
програм вкажете а[200], то повдомлення про помилку не буде видане, а
як значення елемента а[200] буде видано деяке число, що займа
вдповдн 2 байти. Можна визначити масив будь-якого визначеного ранше типу,
наприклад
unsigned arr[40], long double al[1000], char ch[80].
/*помняти мсцями max з min*/ #include <iostream.h> main() { int i,j,a[10], max. nmax, min, nmin, temp; clrscr(); for (i=0; i<10; i++) сп a[i]; max=min=a[0]; nmax=nmin=0; for (i=0; i<10; i++) if(a[i]>max) { max=a[i]; nmax=i;} else if(a[i]<min) {min=a[i], nmin=i;} tern p= a[n m ax]; a[n max]=a[nm n]; a[nm n]=temp; for (i=0; i<10; i++) cout л a[i] л" "; } | // Сортування програвання масиву #include<iostream.h> #include<dos. h> #'\ nclude<conio. h> void main() { int temp, , j, a[ 1 0]; clrscr(); for (i=0;i<10;i++) сп a [ ]; for (i=0;i<9;i++) for (j=i+1 ;j<10;j++) if (a[i]>a[j]) { temp=a[i]; a[i]=a[j]; a[j]=temp; } for (i=0;i<1 0;i++) { cout л a[i]л" "; sound(a[i]*80); delay(500); nosou nd(); } getch(); } |
